网站的站内搜索如何实现?

这篇文章专访segmentfault说到:
我们从一开始就会把搜索作为一个优先解决的技术问题。我们在做站内搜索时花了很大的力气。最开始我们用的是Lucene的引擎做了一个Java的一个后端搜索服务,后来我们是把整个搜索全部转移到Redis平台上,用Redis来做站内的搜索,这样效率会比较高,而且搜索起来准确度比较高。

很想了解这个redis如何实现站内搜索的。 感谢知道的人指点方向, 先谢谢啦

阅读 10.9k
4 个回答

搜索的最基本框架就是 分词 + 倒排索引 啊。权重什么的都是模型的细节(当然对于百度和google来说这个才是重头,要上pagerank什么的)。

redis的set操作,简直就是为了倒排索引定制的。

ElasticSearch肯定是MySQL之后第一个能想到的解决方案

ES是一把牛刀,如果是超大型站,花大量时间搭一个称心的搜索当然挺好。

要是只是中小型站,为了set一把牛刀花大量时间有点不值得。

其实完全可以用第三方站内搜索SaaS,5分钟即可快速接入。

国内做的比较好的,可以看看「卡拉搜索」一行代码就可以快速接入站内搜索。

推荐一下

我用Lucene比较多,定制性比较强,但开发量和维护量稍大些,最近在尝试使用搜易站内搜索引擎,用在中小型数据量的网站上还是不错的。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏