itrnka / ha-elasticsearch-middleware

提供对官方 Elasticsearch PHP API 的访问,作为 ha 框架的中件间实现。应用程序启动时,根据配置自动创建客户端。

v1.0.2 2017-11-15 00:00 UTC

This package is not auto-updated.

Last update: 2024-09-29 05:08:01 UTC


README

作为 ha 框架的中件间实现,提供对官方 Elasticsearch PHP API 的访问。应用程序启动时,根据配置自动创建客户端。

安装

通过 composer 进行安装

composer require itrnka/ha-elasticsearch-middleware

需求

本包基于 ha 框架。如果尚未安装,Composer 会自动安装 ha 框架和 Elasticsearch PHP API。

配置

所需配置键

  • name: 根据 ha 框架要求
  • hosts: string[] Elasticsearch 主机列表

根据以下示例将您的配置添加到 ha 框架中的配置文件

$cfg['middleware'] = [

    // ...

    // elasticsearch - single server
    [
        ha\Middleware\NoSQL\Elasticsearch\Elasticsearch::class,
        [
            'name' => 'ES001',
            'hosts' => ['127.0.0.1:9200'],
        ]
    ],

    // elasticsearch - multi server
    [
        ha\Middleware\NoSQL\Elasticsearch\Elasticsearch::class,
        [
            'name' => 'ES002',
            'hosts' => ['10.10.10.1:9200', '10.10.10.2:9200'],
        ]
    ],

    // ...
];

然后 Elasticsearch 将可用如下

// middleware instance
$es1 = main()->middleware->ES001;
$es2 = main()->middleware->ES002;

// es client (instance of \Elasticsearch\Client):
$es1Client = main()->middleware->ES001->driver();
$es2Client = main()->middleware->ES002->driver();

// or (this is the same)
$es1Client = main()->middleware->ES001->client();
$es2Client = main()->middleware->ES002->client();