(转载)sphinx使用介绍

原文地址:http://www.orczhou.com/index.php/2009/08/sphinx-1/

到今天为止校内论坛Discuz)上的主题数量已经到达了40w,所有回复约500W。随着数据量的增大,DZ自带的站内搜索给数据库的带来的压力越来越大,甚至会导致数据库停止服务(MyISAM在SLOW Query和update并发问题)。取代站内搜索,我们使用了google的自定义搜索服务,google的速度非常快,但是对于论坛来说,Google不能返回实时的搜索结果,而且也无法定制搜索(如安装标题、作者、内容)。

所以,我们将尝试使用sphinx来解决这个问题。先看看sphinx是怎样工作的:

sphinxII

  1. sphinx有两个主要进程indexer和searchd。indexer,正如其名,她的任务是从数据库(或者其他的数据源)收集原始的数 据,然后建立相应的索引。searchd则是通过读取indexer建立的索引来响应客户端的请求。如果用图书馆来打比方的话,一个是按照索书号整理数目 的工作人员,一个是帮你从书架上取书的人。
  2. 要让sphinx为你工作的话,需要做几件事(在配置文件中完成):
    1) 告诉sphinx,数据源在哪儿(配置source,对应MySQL的话,就是填写其主机名、登录用户、密码等)
    2) 建立“索引任务”。告诉indexer针对数据源的哪一部分建立索引,建立索引时数据源的编码、最小索引长度等细节信息
  3. 执行indexer,完成前面配置文件中的“索引任务”;启动searchd服务。

这样你的应用就可以通过sphinx提供的API来搜索数据库中的数据了,sphinx会为你返回对应数据的主键。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值