easyswoole/etcd-client 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

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

easyswoole/etcd-client

Composer 安装命令:

composer require easyswoole/etcd-client

包简介

php stander lib

README 文档

README

Requirements

  • PHP7.1+
  • ext-swoole
  • Composer

Installation

composer require easyswoole/etcd-client

Usage

<?php
require 'vendor/autoload.php';
$config = new \EasySwoole\EtcdClient\Config();
$config->setHost('127.0.0.1');
$config->setPort(2379);
$config->setScheme('http');
$config->setVersion('v3'); // v3alpha v3beta v3 v2
$config->setPretty(true);
$config->setSsl(false);

$etcd = new \EasySwoole\EtcdClient\Etcd($config);
$client = $etcd->client();

/*********** kv ***********/
// set value
$client->put('redis', '127.0.0.1:6379');

// set value and return previous value
$client->put('redis', '127.0.0.1:6579', ['prev_kv' => true]);

// set value with lease
$client->put('redis', '127.0.0.1:6579', ['lease' => 7587822882194199413]);

// get key value
$client->get('redis');

// get all keys
$client->getAllKeys();

// get keys with prefix
$client->getKeysWithPrefix('/v3/service/user/');

// delete key
$client->del('redis');

// compaction
$client->compaction(7);


/************ lease *****************/

$client->grant(3600);

// grant with ID
$client->grant(3600, 7587822882194199413);

// revoke a lease
$client->revoke(7587822882194199413);

// keep the lease alive
$client->keepAlive(7587822882194199413);

// retrieve lease information
$client->timeToLive(7587822882194199413);


/************ auth role user **************/

// enable authentication
$client->authEnable();

// disable authentication
$client->authDisable();

// get auth token
$token = $client->authenticate('user', 'password');

// set auth token
$client->setToken($token);

// clear auth token
$client->clearToken();

// add a new role
$client->addRole('root');

// get detailed role information
$client->getRole('root');

// delete a specified role
$client->deleteRole('root');

// get lists of all roles
$client->roleList();

// add a new user
$client->addUser('user', 'password');

// get detailed user information
$client->getUser('root');

// delete a specified user
$client->deleteUser('root');

// get a list of all users.
$client->userList();

// change the password of a specified user
$client->changeUserPassword('user', 'new password');

// grant a role to a specified user
$client->grantUserRole('user', 'role');

// revoke a role of specified user
$client->revokeUserRole('user', 'role');

// grant a permission of a specified key or range to a specified role
$client->grantRolePermission('admin', \EasySwoole\EtcdClient\Etcd::PERMISSION_READWRITE, 'redis');

// revoke a key or range permission of a specified role
$client->revokeRolePermission('admin', 'redis');

easyswoole/etcd-client 适用场景与选型建议

easyswoole/etcd-client 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 49 次下载、GitHub Stars 达 4, 最近一次更新时间为 2021 年 04 月 18 日, 在 PHP 生态内属于活跃度较高的组件。

它主要适用于以下技术方向: 「framework」 「async」 「swoole」 「easyswoole」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。

我们在过去多个企业项目中使用过 easyswoole/etcd-client 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 easyswoole/etcd-client 我们能提供哪些服务?
定制开发 / 二次开发

基于 easyswoole/etcd-client 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

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

GitHub 信息

  • Stars: 4
  • Watchers: 0
  • Forks: 2
  • 开发语言: PHP

其他信息

  • 授权协议: Apache-2.0
  • 更新时间: 2021-04-18