Solr 廣泛支援各客端程式語言 API
Solr 內部核心為 Lucene 檢索引擎,對外則是一 Web application(網路應用程式)介面。
因 Solr 使用開放式 web 協定,所以它支援眾多的客端程式語言與其連接溝通。
最讓人振奮的:HTTP 其實就是 Solr 對外溝通的核心協定,即時你不使用專屬程式包 API 與 Solr 連動,你依然可使用最基礎的 web url 指令來操作 Solr。
舉例來說:如果我要取一筆編號 #SP2514 資料,可以從下方Solr伺服器端 url 取得資料
http://localhost:8983/solr/techproducts/select?q=id:SP2514N&wt=xml
只要你的程式能呼叫上述網址,就能拉出處理結果。
不過,每次都要組合上述的網址去與 Solr 互動,難免偏於繁瑣,因此 Solr 也支援了眾多語言專屬的Client API。
將上述繁瑣的網址介面都整合進各程式語言 API 之中,減少開發人員自行研發輪子的時間。
下方整理了 Solr 各語言的支援列表:
API 名稱 | 程式語言環境 | 網站 |
SolRuby | Ruby | https://github.com/rsolr/rsolr |
DelSolr | Ruby | https://github.com/avvo/delsolr |
acts_as_solr | Rails | http://acts-as-solr.rubyforge.org/ |
Flare | Rails | http://wiki.apache.org/solr/Flare |
SolPHP | PHP | http://wiki.apache.org/solr/SolPHP |
SolrJ | Java | http://wiki.apache.org/solr/SolJava |
Python API | Python | http://wiki.apache.org/solr/SolPython |
PySolr | Python | http://code.google.com/p/pysolr/ |
SolPerl | Perl | http://wiki.apache.org/solr/SolPerl |
Solr.pm | Perl | http://search.cpan.org/~garafola/Solr-0.03/lib/Solr.pm |
SolrForrest | Forrest/Cocoon | http://wiki.apache.org/solr/SolrForrest |
SolrSharp | C# | http://www.codeplex.com/solrsharp |
SolColdfusion | ColdFusion | http://solcoldfusion.riaforge.org/ |
SolrNet | .NET | https://github.com/mausch/SolrNet |
AJAX Solr | AJAX | http://github.com/evolvingweb/ajax-solr/wiki |
有了如此高度支援的 API ,相信將搜尋引擎整合到你們公司的服務,將不再是痛苦艱難的任務了。