每隔几分钟重新索引一次搜索引擎

时间:2009-07-05 08:59:01

标签: php windows sphinx

我正在我的开发计算机上运行搜索服务,我必须运行索引器(.exe文件)并每1-5分钟重启一次服务(我正在使用sphinx搜索)。 我将如何在Windows中执行此操作?我的想法是通过Windows任务调度程序运行批处理文件,但是你做了什么?

2 个答案:

答案 0 :(得分:1)

在Windows中使用Windows Task Scheduler。在Linux中使用cron

否则,您可以编写一个守护程序进程,该进程将在指定的时间间隔内以无限循环方式休眠,并在间隔结束后重新编制索引。然后,它会睡觉并继续这个过程。

例如(在Perl中):

#!perl

use strict;
use warnings;

use Proc::Daemon;

Proc::Daemon::Init;

my $minutes = 5;
my $seconds = 60 * $minutes;

while (1) {
    sleep($seconds);
    # Do necessary work
}

答案 1 :(得分:1)

我发现pycron非常有用,可以替代内置的任务调度程序。如果您已经习惯了unix cron风格,那么从初学者开始就会喜欢它。它有一个可编辑的配置文件和日志文件以及更多选项。

关于它的文章:http://www.bigbluehost.com/article4.html

Pycron的网站:http://www.kalab.com/freeware/pycron/pycron.htm