php – Faceted Search With(out)Solr

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了php – Faceted Search With(out)Solr脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
我想为我的一个项目实施 faceted search.我正在使用PHP5,MysqL和Symfony 1.4.显然,社区指向 Apache Solr,这似乎正是我想要完成的事情.

问题是该网站将在托管服务提供商上运行,不允许我设置Solr(它是一个共享托管环境,既不允许Tomcat也不允许Solr运行).

那么请您指点一下可能的替代方案,或者是否有办法在这样的环境中设置Solr?

编辑
我的托管服务提供商既不支持SOLR,也不支持oPEnsolr.一般情况下,我无法使用我的环境连接到同一服务器或远程服务器上的进程.似乎唯一可用的选项是使用Zend_Search_Lucene.那么这是否支持分面搜索?或者,如果您有其他选择,请分享!我觉得自己处在不知名的地方!

编辑2
由于这个问题从给出的答案开始大约一周,我感到惊讶(并且失望)PHP中没有可用于实现分面搜索的库(非服务).似乎要么需要手动实现,要么使用下面提供的解决方

解决方法

性能不会很好,也不讨论扩展,但您始终可以通过HTTP创建反向HTTP隧道.基本上,不是Web服务器打开到Solr服务器的出站连接,而是Solr服务器连接到Web服务器以请求作业和发布作业结果.

你需要做什么:

>浏览器发布搜索查询,查询只是在数据库中排队.
>反向代理定期连接到Web服务器(通过普通的端口80)以从作业队列中获取查询列表,将查询传递给Solr服务器,并将结果POST回Web服务器.
>浏览器定期轮询Web服务器以查找完成的搜索结果.

奖励标记:如果您的服务器允许并发请求处理,请使用long polling来改善延迟.

简而言之,咬紧牙关,搬到一个体面的主人.

脚本宝典总结

以上是脚本宝典为你收集整理的php – Faceted Search With(out)Solr全部内容,希望文章能够帮你解决php – Faceted Search With(out)Solr所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。