承接 imiphp/imi-etcd 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

imiphp/imi-etcd

最新稳定版本:v2.1.0-beta

Composer 安装命令:

composer require imiphp/imi-etcd

包简介

imi 框架 etcd 组件。imi etcd component.

README 文档

README

Latest Version Php Version Swoole Version imi License

介绍

此项目是 imi 框架的 etcd 组件。

正在开发中,随时可能修改,请勿用于生产环境!

支持的功能:

  • 配置中心

安装

composer require imiphp/imi-etcd:~2.1.0

使用说明

配置

@app.beans

use function Imi\env;
use Imi\Util\Imi;

[
    'ConfigCenter' => [
        // 'mode'    => \Imi\ConfigCenter\Enum\Mode::WORKER, // 工作进程模式
        'mode'    => \Imi\ConfigCenter\Enum\Mode::PROCESS, // 进程模式
        'configs' => [
            'etcd' => [
                'driver'  => \Imi\Etcd\Config\EtcdConfigDriver::class,
                // 客户端连接配置
                'client'  => [
                    'scheme'              => env('IMI_ETCD_SCHEME', 'http'), // http or https
                    'host'                => env('IMI_ETCD_HOST', '127.0.0.1'), // 主机名
                    'port'                => env('IMI_ETCD_PORT', 2379), // 端口号
                    'timeout'             => env('IMI_ETCD_TIMEOUT', 6000), // 网络请求超时时间,单位:毫秒
                    'ssl'                 => env('IMI_ETCD_SSL', false), // 是否使用 ssl(https) 请求
                    'version'             => env('IMI_ETCD_VERSION', 'v3'), /**
                     * v3 v3alpha v3beta v2
                     * etcd v3.2以及之前版本只使用[CLIENT-URL]/v3alpha/*。
                     * etcd v3.3使用[CLIENT-URL]/v3beta/*保持[CLIENT-URL]/v3alpha/*使用。
                     * etcd v3.4使用[CLIENT-URL]/v3/*保持[CLIENT-URL]/v3beta/*使用。
                     * [CLIENT-URL]/v3alpha/*被抛弃使用。
                     * etcd v3.5以及最新版本只使用[CLIENT-URL]/v3/*。
                     * [CLIENT-URL]/v3beta/*被抛弃使用。
                     */
                    'pretty'              => env('IMI_ETCD_PRETTY', true),
                    'sslCert'             => '',
                    'sslKey'              => ''
                ],
                // 监听器配置
                'listener' => [
                    'timeout'         => 30000, // 配置监听器长轮询超时时间,单位:毫秒
                    'failedWaitTime'  => 3000, // 失败后等待重试时间,单位:毫秒
                    'savePath'        => Imi::getRuntimePath('config-cache'), // 配置保存路径,默认为空不保存到文件。php-fpm 模式请一定要设置!
                    'fileCacheTime'   => 30, // 文件缓存时间,默认为0时不受缓存影响,此配置只影响 pull 操作。php-fpm 模式请一定要设置为大于0的值!
                    'pollingInterval' => 10000, // 客户端轮询间隔时间,单位:毫秒
                ],
                // 配置项
                'configs' => [
                    'etcd' => [
                        'key'  => 'imi-etcd-key1',
                    ],
                ],
            ],
        ],
    ],
]

获取配置

\Imi\Config::get('etcd'); // 对应 imi-etcd-key1

写入配置

/** @var \Imi\ConfigCenter\ConfigCenter $configCenter */
$configCenter = App::getBean('ConfigCenter');
$name = 'imi-etcd-key1';
$value = json_encode(['imi' => 'niubi']);
$options = [];
$configCenter->getDriver('etcd')->push($name, $value);
$configCenter->getDriver('etcd')->push($name, $value, $options);

免费技术支持

QQ群:17916227 点击加群,如有问题会有人解答和修复。

运行环境

版权信息

imi-etcd 遵循 MulanPSL-2.0 开源协议发布,并提供免费使用。

统计信息

  • 总下载量: 0
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 5
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 1

GitHub 信息

  • Stars: 5
  • Watchers: 2
  • Forks: 1
  • 开发语言: PHP

其他信息

  • 授权协议: MulanPSL-2.0
  • 更新时间: 2022-08-19

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固