五月天激情丁香,国产精品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视频在线观看视频 | 狠狠操五月天 | 成人伊人青草久久综合网下载 | 4444在线观看片 | 色成人综合 | 婷婷亚洲综合 | 丁香花在线电影播放 | 国产男女自拍视频 | 婷婷免费高清视频在线观看 | 奇米影视四色首页手机在线 | 日韩午夜在线 | 久久www免费人成看国产片 | 91av综合| 黄色免费的视频 | 国产视频每日更新 | 国产高清在线免费观看 | 国产一级在线观看 | 成年人国产网站 | 久久ww| 偷柏自拍亚洲欧美综合在线图 | 亚洲六月丁香婷婷综合 | 99色视频在线观看 | 黄色在线小视频 | 国产一区视频在线免费观看 | 99热在线观看精品 | 亚洲一区二区精品视频 | 国产精品久久免费 | 免费福利在线观看 | 色网址在线 | www. 在线播放| 久久久久久久国产精品电影 | 一级毛片免费全部播放完整 | 欧美插插视频 | 久久99热66这里只有精品一 | 精品一二三区 | 久久亚洲欧美成人精品 | 婷婷丁香六月 | 五月网婷婷 |