五月天激情丁香,国产精品2019,国产成人精品亚洲2020,国产精品免费视频一区二区三区,开心久久婷婷综合中文字幕,天堂视频在线观看免费完整版

場(chǎng)景

在業(yè)務(wù)量小的情況下,我們使用Redis單機(jī)連接池就可以滿足業(yè)務(wù)需求。因此,redis單機(jī)連接池就可以滿足我們的業(yè)務(wù)。因此我們會(huì)這樣寫:

示例

注冊(cè)連接池

use EasySwoole\Redis\Config\RedisConfig;
use EasySwoole\RedisPool\Redis;
Redis::getInstance()->register('redis',new RedisConfig());

使用

use EasySwoole\RedisPool\Redis;
use EasySwoole\Redis\Redis as RedisClient
Redis::invoke('redis', function (RedisClient $redis) {
    var_dump($redis->set('a', 1));
});

當(dāng)業(yè)務(wù)量上來后,我們需要切換成集群模式的時(shí)候怎么辦。因此我們做的應(yīng)該是:

注冊(cè)集群連接池

use EasySwoole\RedisPool\Redis;
use EasySwoole\Redis\Config\RedisClusterConfig;
Redis::getInstance()->register('redis',new RedisClusterConfig([
        ['172.16.253.156', 9001],
        ['172.16.253.156', 9002],
        ['172.16.253.156', 9003],
        ['172.16.253.156', 9004],
    ]
));

老業(yè)務(wù)代碼

use EasySwoole\RedisPool\Redis;
use EasySwoole\Redis\Redis as RedisClient
Redis::invoke('redis', function (RedisClient $redis) {
    var_dump($redis->set('a', 1));
});

對(duì)于之前的老業(yè)務(wù)代碼,就會(huì)出現(xiàn)、、、、此事,我的invoker回調(diào)參數(shù)是一個(gè)EasySwoole\Redis\RedisCluster實(shí)例,而非EasySwoole\Redis\Redis, 因此就會(huì)導(dǎo)致業(yè)務(wù)代碼報(bào)錯(cuò)。

解決方案

Easyswoole Redis Pool組件,在2.1.1版本開始,基于easyswoole的magic pool 引入一個(gè)cask機(jī)制。可以指定實(shí)例化的class。

定義一個(gè)class

namespace App\Utility;

use EasySwoole\Redis\Redis;

class RedisClient extends Redis
{
    function fuck()
    {
        var_dump('waf');
    }
}

該class繼承自EasySwoole\Redis\Redis

注冊(cè)redis

use EasySwoole\Redis\Config\RedisConfig;
use EasySwoole\RedisPool\Redis;
use App\Utility\RedisClient
Redis::getInstance()->register('redis',$config,RedisClient::class);

使用redis

use EasySwoole\RedisPool\Redis;
use App\Utility\RedisClient
Redis::invoke('redis', function (RedisClient $redis) {
    var_dump($redis->set('a', 1));
});

遷移集群

修改注冊(cè)配置

use EasySwoole\RedisPool\Redis;
use EasySwoole\Redis\Config\RedisClusterConfig;
Redis::getInstance()->register('redis',new RedisClusterConfig([
        ['172.16.253.156', 9001],
        ['172.16.253.156', 9002],
        ['172.16.253.156', 9003],
        ['172.16.253.156', 9004],
    ]
),RedisClient::class);

繼承修改

修改App\Utility\RedisClient,讓它繼承EasySwoole\Redis\RedisCluster即可

而由于redis單機(jī)客戶端與集群客戶端的方法幾乎一致,因此可以不修改任何業(yè)務(wù)代碼,就是實(shí)現(xiàn)單機(jī)到集群的遷移

主站蜘蛛池模板: 一级毛片免费观看视频 | 97色在线| 国产一区日韩二区欧美三区 | 国产一区二区视频在线 | 日韩欧美一区在线观看 | 四虎影院在线网址 | 美女一区二区在线观看 | 久久99热不卡精品免费观看 | 99re热视频| 精品国产一区二区三区久 | 热99re久久精品香蕉 | 欧美香蕉视频 | 欧美视频中文字幕 | 久久精品国产精品亚洲精品 | ririaiav| 久久精品中文字幕首页 | 国产精品视频久久 | 日本不卡视频网站 | 国产亚洲自拍一区 | 亚洲高清在线天堂精品 | 你懂的视频在线观看资源 | 97r久久精品国产99国产精 | 日日操狠狠干 | 人人精品久久 | 丁香花影院 | 免费一级夫妻a | 无法忍受电影完整版 | 九七电影院97网手机版不用下载 | 视频免费观看 | 五月婷婷综合在线视频 | 国产高清自拍一区 | 激性欧美激情在线aa | 一级免费视频 | 激情午夜婷婷 | 日本精品久久久久中文字幕8 | 模特精品一区二区三区 | 夜夜激情网 | 日韩福利视频导航 | 久久瑟瑟 | 欧美日韩一区在线观看 | 久久综合偷拍 |