zoukankan      html  css  js  c++  java
  • 开源搜索引擎Sphinx 中启动多个搜索进程的方法(转)

    要在同一机器上启动多个sphinx搜索进程searchd,必须为不同的进程指定不同的配置文件(sphinx.conf ),其中搜索进程的端口号不能相同,即 listen = 0.0.0.0:3312 中的默认端口3312 必须更改为一个系统不在使用的端口。如果要指定不同的数据库,必须更改:

      sql_db = dbname

      sql_host = 192.168.1.100

      sql_pass = username

      sql_user =password

      sql_port = 3306

    配置文件中的index名称也不能相同,另外,不同配置文件的生成的索引文件不能放在同一个目录,否则搜索时会对整个文件夹下的索引文件进行搜索,但是不同索引文件对应不同的数据库,这样取数据时会出现问题。

    假设有两个配置文件:sphinx1.conf和sphinx2.conf分别位于两个sphinx数据目录:/home/testuser/sphinx1和/home/testuser/sphinx2中 ,sphinx安装路径为/usr/local/sphinx/,那么启动方法如下:

    /usr/local/sphinx/bin/searchd --config /home/testuser/sphinx1/sphinx1.conf

    /usr/local/sphinx/bin/searchd --config /home/testuser/sphinx2/sphinx2.conf

    同样,生成索引的方法如下:

    /usr/local/sphinx/bin/indexer -- config /home/testuser/sphinx1/sphinx1.conf  indexname  --rotate

    /usr/local/sphinx/bin/indexer -- config /home/testuser/sphinx2/sphinx2.conf  indexname  --rotate

    加参数—rotate是为了在更新索引文件后,无须重新启动searchd进程而可以搜索到更新index后的内容。

  • 相关阅读:
    Javascript创建对象的几种方式
    web化的远程桌面
    (原创) Asp.net XPS HighLight(高亮)CreateWatermark(水印 )
    C# 序列化和反序列化
    删除 HttpCookie
    (轉)AlertBox 彈出層(真的不錯哦)
    净高误差超过20mm
    如何处理并发
    ORM性能比对
    STL源码iterator和traits编程技法
  • 原文地址:https://www.cnblogs.com/xingmeng/p/3429133.html
Copyright © 2011-2022 走看看