sphinx安装测试2

时间:2022-01-30 01:04:58

上一节咱们介绍了sphinx的安装,也进行了简单的测试,这一节说一下sphinx都有哪些链接方式。

上一节咱们安装的sphinx是2.2.11 最新稳定版本,但是在安装目录、usr/local/sphinx/bin当中没有search命令。不知道是不是最新的sphinx把search命令给去掉的、请大家注意一下。

安装之后最主要怎么应用在咱们的程序当中,sphinx提供两种链接方式,一是api 默认端口9312,二是SphinxQL,是Mysql的接口,默认端口9306,可以通过mysql客户端访问。

 

使用下面的命令

 searchd -c  ../etc/sphinx.conf   #后面跟配置文件

执行之后

sphinx安装测试2

打印这些证明已经启动成功:

一共两个端口,也就是上面咱们提到的。下面的index 是启动的索引名称,使用mysql工具链接9306端口。

新打印一下咱们抓取的原始sql数据:

sphinx安装测试2

 

测试

 sphinx安装测试2

再带查询条件查询: 查询title 包含test字段为前两条

 sphinx安装测试2

说明mysql的方式测试已经成功。

下面测试sphinxAPI,使用nodejs,

 

首页在 https://github.com/lindory-project/node-sphinxapi/tree/master ,安装方式: npm install sphinxapi

文档比较详细,简单实用如下

#sphinx2.js

 

var SphinxClient = require ("sphinxapi"),

util = require('util'),

assert = require('assert');

var cl = new SphinxClient();

cl.SetServer('localhost', 9312);

cl.Query('重构','test1', function(err, result) {

assert.ifError(err);

console.log(util.inspect(result, false, null, true));

});

运行程序,node sphinx2.js,如下

{ error: '',

warning: '',

status: [ 0 ],

fields: [ 'title', 'content' ],

attrs:

[ [ 'group_id', 1 ],

[ 'date_added', 2 ] ],

matches:

[ { id: 3,

weight: 2,

attrs: { group_id: 2, date_added: 1427446411 } },

{ id: 4,

weight: 1,

attrs: { group_id: 2, date_added: 1427446411 } } ],

total: 2,

total_found: 2,

time: 0.004,

words:

[ { word: '重', docs: 2, hits: 2 },

{ word: '构', docs: 2, hits: 2 } ] }

可以看出和SphinxQL运行的效果一样,只不过返回的信息更多而已。