<?php
require 'vendor/autoload.php';
use Elasticsearch\ClientBuilder;
$hosts = [
// 第一个节点配置
[
'host' => 'localhost', // 必填项
'port' => 9200, // 不设置,默认9200,
'scheme' => 'http', // 不设置, 默认http
'user' => 'elastic',
'pass' => '123456'
],
[
'host' => '192.169.1.103', // 必填项
'port' => 9300, // 不设置,默认9200,
'scheme' => 'http', // 不设置, 默认http
'user' => 'elastic',
'pass' => '123456'
],
// .... 其他节点配置
];
// 实例化 ClientBuilder
$client = ClientBuilder::create()
// 设置主机信息
->setHosts($hosts)
// 设置重试次数,默认情况下,会重试n次,n等于集群的节点数,只有操作结果发生了严重的异常才会触发重试
// 如连接被拒绝、连接超时、DNS超时等等。4**和5**系列不被认为是可重试事件,因为节点已经返回来操作响应
->setRetries(2)
// 构建客户端对象
->build();
$params = [
'index' => 'test',
];
try {
// get 查询
$response = $client->indices()->get($params);
if (is_array($response)) {
echo json_encode($response);
} else {
echo $response;
}
} catch (\Exception $e) {
print_r($e->getMessage());
}
【Elasticsearch PHP版】设置重试次数setRetries
原创
©著作权归作者所有:来自51CTO博客作者深漂小码哥的原创作品,请联系作者获取转载授权,否则将追究法律责任
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章