中文在线一区二区_欧美在线综合_久久久久久综合_欧美一区二区三区视频_国产免费看_国产福利精品一区

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');
});
主站蜘蛛池模板: 久久国产精品亚洲 | 欧美成人免费 | 不卡一二三区 | 国产一区二区三区在线免费观看 | 四虎影视免费看电影 | 亚洲国产中文字幕在线观看 | 国产精品一二三区 | 日本高清视频在线 | 爱综合| www.亚洲| 亚洲免费视频在线观看 | 不卡一区 | 日韩欧美一区二区三区免费观看 | 国产福利电影在线观看 | 精品蜜桃一区二区三区 | 99久久婷婷国产综合精品电影 | 午夜精品一区二区三区免费视频 | 韩日一区 | 欧美一区二区在线观看 | 欧美日韩国产一区二区三区不卡 | 久久久久久精 | 欧美成人一区二区 | 色接久久 | 影音先锋中文字幕一区 | 国产精品二区三区 | 国产一区在线视频 | 色老头综合网 | 国产一区二区三区视频 | 香蕉大人久久国产成人av | 久久久天堂国产精品女人 | 精品视频一区二区三区 | 国产视频久久 | 久久久久久成人 | 欧美男人的天堂 | 中日韩午夜理伦电影免费 | 精品96久久久久久中文字幕无 | 亚洲国产第一页 | 国产精品 日韩 | 久久99这里只有精品 | 91精品国产91久久久久久 | 国产成人精品久久二区二区91 |