首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP SphinxClient无法获得长时间执行查询结果

问PHP SphinxClient无法获得长时间执行查询结果
EN

Stack Overflow用户
提问于 2013-03-28 07:08:44
回答 1查看 667关注 0票数 1

我正在尝试获取一些长时间执行的查询的结果。每个查询都有相同的结构:

代码语言:javascript
复制
    @CODE (ZZZZZZ|YYYYY...) @FIELD2 YES

每个成功的查询都会在70-100秒内完成(我正在使用searchd --console进行检查)。但是PHP代码停止等待第60秒的响应,并丢弃一个错误

代码语言:javascript
复制
  received zero-sized searchd response 

看起来连接中断了还是这样?我使用的是普通的SphinxClient。调用sphinx search的PHP代码如下所示:

代码语言:javascript
复制
$this->client->SetServer($this->host, $this->port);
$this->client->SetArrayResult(true);
$this->client->SetWeights(array(100, 1));
$this->client->SetMatchMode($this->mode);
$this->client->SetMaxQueryTime(5000000);
$this->client->SetLimits($this->offset, $this->limit, ($this->limit > 1000) ? $this->limit : 1000);
$this->result = $this->client->Query($this->query, $this->index);

PHP配置为

代码语言:javascript
复制
max_execution_time = 120
max_input_time = 120

是否可以设置一些系统设置-这样脚本就可以等待更长时间的响应?我使用的是Debian GNU/Linux 5.0.3 Lenny

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-03-28 21:07:31

你试过设置setConnectionTimeout吗?

http://sphinxsearch.com/docs/current.html#api-func-setconnecttimeout

尽管设置stream_set_timeout可能会更好,但http://www.php.net/manual/en/function.stream-set-timeout.php必须连接sphinxapi.php才能向其添加调用。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15671295

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档