在同一台服务器上的两个不同的应用程序中运行sphinx

时间:2012-04-12 09:56:50

标签: ruby-on-rails ruby-on-rails-3 sphinx thinking-sphinx

我有两个小应用程序在其中搜索。它们完全是两个不同的应用程序,具有不同的数据库等。

现在问题出现了pid文件。只有在应用程序上才会搜索原因

rake ts:start 

一方面它说另一个实例已经在运行。 我怎样才能改变这一点,以便sphinx继续为这两个应用程序运行。我正在使用Capistrano进行开发。

结构是这样的:

  /home/me/my_app_1/production/current
  /home/me/my_app_2/production/current

1 个答案:

答案 0 :(得分:4)

在这两个应用程序中,您必须创建一个config/sphinx.yml,其中包含各种配置变量,其中一个允许您指定sphinx服务器的端口。在一个应用程序中手动定义端口时,如下所示:

development:
  port: 9313
test:
  port: 9314
production:
  port: 9316

和另一个:

development:
  port: 9317
test:
  port: 9318
production:
  port: 9319

然后在两个应用程序中调用rake ts:rebuild。思考sphinx将为sphinx生成新的配置文件,为应用程序中的每个应用程序和每个环境设置不同的sphinx实例。