easyswoole - 基于swoole扩展实现的一款高性能php框架

Etcd 協程客戶端

EasySwoole 提供了一個協程安全的 Etcd 協程版本客戶端,方便用戶做分布式及微服務開發。

組件要求

  • php: >= 7.1.0
  • ext-json: *
  • easyswoole/http-client: ^1.1

安裝方法

composer require easyswoole/etcd-client

倉庫地址

easy-swoole/etcd-client

使用方式

使用如下方式,先給 Etcd 客戶端注入 Config 連接配置,連接上 Etcd 服務端。

<?php
require_once 'vendor/autoload.php';

// config 默認 http://127.0.0.1:2379/v3
### 數組形式注入配置
$config = new \EasySwoole\EtcdClient\Config([
    'host'    => '127.0.0.1',
    'port'    => 6379,
    'scheme'  => 'http',
    'version' => 'v3', // v3alpha v3beta v3 v2
    'pretty'  => true,
    'ssl'     => false,
]);

### setter 形式注入配置
$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);

// 數組形式 和 setter 形式兩種寫法,最終效果是相同的

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

$client = $etcd->client();

下文所用到的 $client 都是引用上述連接上的客戶端。

KV

set

<?php
go(function () use ($client) {
    // 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

<?php
go(function () use ($client) {
    // get key value
    $client->get('redis');

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

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

delete

<?php
go(function () use ($client) {
    // delete key
    $client->del('redis');
});

compaction

<?php
go(function () use ($client) {
    // compaction
    $client->compaction(7);
});

Lease

<?php
go(function () use ($client) {
    // grant with ID 0
    $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

<?php
go(function () use ($client) {
    // 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');
});
主站蜘蛛池模板: 河南反渗透设备,河南纯净水设备,河南软化水设备,郑州EDI超纯水设备,郑州水处理设备厂家_河南江宇环保科技有限公司 | 南通众诚数控机床有限公司-液压机,剪板机,折弯机,卷板机,液压冲床,路灯杆设备专业制造商 | 铸造厂-铸铝-铸铜-铝合金铸造-重力铸造-翻砂铸造-[剑锋机械配件]专业东莞|深圳铸造厂 | 商标注册_商标转让交易_专利申请_版权登记_ISO认证服务咨询-世标知识产权 | 橡塑板_橡塑板厂家_橡塑保温管厂家_廊坊虓龙保温材料有限公司 | 银泰洁净--净化工程总承包,20年精耕细作,专为净化而来_银泰洁净--净化工程总承包,20年精耕细作,专为净化而来 | 医院,小型生活污水处理设备-山东明基环保设备有限公司 | 途远VR+_成都VR全景制作_成都360全景漫游_成都720全景航拍_成都途远科技有限公司 | 南洋电缆_南洋电线电缆_广州南洋电缆集团有限公司 | 南通众诚数控机床有限公司-液压机,剪板机,折弯机,卷板机,液压冲床,路灯杆设备专业制造商 | 联动机-钻井转盘-滑动游车-河南思达瑞石油机械制造有限公司 | 装修公司-吉诚装饰公司官网| 消防烟感清洗,火灾探测器清洗,探测器清洗厂家 | 苏子富春品牌馆 抚顺市富春农业科技开发有限公司 抚顺特色农产品 抚顺市特色馆 | 交通标志牌-交通标牌-铝圆牌-铝三角片-铝滑槽-公路警示指示牌-方牌-高速道路反光牌毛坯-交通设施安全警示标识牌-路名指示限速限高牌-厂家加工交通标牌铝板半成品毛坯-上海吕盟铝业有限公司 | 注塑机螺杆_光学无卤耐磨耐腐蚀螺杆_合金材料_螺杆研磨抛光机_杰宇螺杆 | 深圳蓝枫印刷_画册印刷_彩页印刷_宣传册印刷_包装盒印刷_彩盒印刷厂_不干胶印刷厂 | 水性漆_水性漆厂家_水性涂料加盟代理_两只璧琥全漆定制官网 | 中国(北京)国际园林绿化设备展览会| 橡胶管_高压橡胶管_高压胶管_铠装高压胶管-河北远大新特橡塑有限公司 | 长春网站优化,网络推广,seo快速排名,1.8元/词/天-同信长春网络公司 | 江西食用油批发_江西食用油厂家_菜籽油厂家-江西省家泰粮油科技有限公司 | 拉力机|拉力试验机|拉力测试机厂家-苏州天氏库力精密仪器有限公司 | 水硬度在线分析仪-氟离子|悬浮固体浓度分析仪-ldo分析仪-上海植茂 | 江苏工业双氧水_工业亚硝酸钠的作用与用途_工业双氧水厂家-江苏连云港嘉一化工厂 | 铁行火车票_铁行火车票网上订票_铁行火车票客户端【铁行官网】 | 深圳市大业激光成型技术有限公司| 深山工作室提供网络投票系统|微信公众号投票|微信公众号小程序|抖音小程序|百度小程序|微信公众号开发|企业网站建设 | 合肥环氧地坪-合肥固化地坪施工-安徽地宽建筑装饰工程有限公司 | 医疗器械,理化实验室设备,微生物,培养基,一站式采购 - 杭州润泽仪器商城 | 厌氧培养系统_厌氧工作站_厌氧培养装置_智能厌氧培养_常州普莱实验系统 | 石牌坊价格_石雕农村门楼图片_石牌楼雕刻制作 _ 长城石雕 | 意优教育|意大利留学中介_意大利留学费用_意大利申请条件_北京意大利语培训学校 | 夏令营报名中心-军事夏令营哪家好-青少年夏令营推荐-中小学夏令营活动-夏令营报名中心 | 烘焙服定做_定做烘焙制服_工服定制厂家_烘焙服生产厂家-庆洋制衣 | 潍坊亿宏重工机械有限公司,破碎机,高性能立磨机,颚式破碎机,锤式破碎机反击式破碎机,重锤式破碎机,高性能反击式破碎机,圆锥式破碎机,给料机系列,链板给料机系列,简易给料机系列,振动给料机 | 童程童美少儿编程培训课程 - 上市公司缔造少儿编程专业化品牌20年 | 铝合金百叶窗_西安百叶窗厂家-西安市未央区通达建材物资部 | 苏州纸袋印刷_药袋、纸袋定制厂家_苏州嘉奕达印刷包装厂 | 七评-爱美儿信息科技有限公司〖官网〗? | 液压尾管悬挂器,机械式尾管悬挂器价格,石油套管扶正器厂家,连续油管悬挂器,高压双塞水泥头,免钻塞注水泥分级箍,单塞套管水泥头价格,弹性套管扶正器,铸铝钢性扶正器,钢性套管扶正器厂家 |