# redis插件
該插件提供 redis 連接池, ESD 默認已經加載,如需使用請添加配置。
## 插件配置
以下為必填設置
~~~
redis:
default: (連接標識)
host: '192.168.65.2' (主機名)
test:(多個連接通過此標記區分)
host: '192.168.65.2'
port: '6380'
~~~
### 可選配置
password 連接密碼
select_db 連接數據庫,默認為0
port 端口,默認6379
pool_max_number 連接池最大連接 默認 10
>[danger] 注意此連接數指的是一個woker的最大連接數,如果您配置了多個連接標識,那么每個連接標識都會保留10個連接;如果您啟動了4個worker進程,配置了2個連接標識,則會最多保留40*2個連接實例。
## 插件使用
### 方法1
在需要使用的對象中添加 `use GetRedis;`
然后可使用 `$this->redis() `對象獲取redis實例。
### 方法2
>[danger] 通過注解使用,通過給屬性增加以下注解來使用,**注意該方式無法更改連接標識**
~~~
/**
* @Inject()
* @var \Redis
*/
protected $redis;
~~~
### 切換連接
使用 `$this->redis('test') ` 切換連接。
## 案例
~~~
public function test_redis(){
$key = '123';
$this->redis()->set($key, $key);
$val = $this->redis()->get($key);
assert($key,$val);
$this->log(Logger::DEBUG,'assert redis set/get',['a' => $key, 'b' =>$val]);
$this->redis('test')->set($key, $key);
$val = $this->redis('test')->get($key);
assert($key,$val);
$this->log(Logger::DEBUG,'assert redis set/get',['a' => $key, 'b' =>$val]);
$info = $this->redis('test')->info();
return $info;
}
~~~
- 前言
- 捐贈ESD項目
- 使用篇-通用
- 環境
- 安裝
- 規范
- 壓力測試
- 配置
- 如何設置YML配置
- server配置
- 端口配置
- 項目結構
- 事件派發
- 日志
- 注解
- DI容器
- 自定義進程
- 并發及協程池
- Console插件
- Scheduled插件
- Redis插件
- AOP插件
- Saber插件
- Mysql插件
- mysql事務
- Actuator插件
- Whoops插件
- Cache插件
- PHPUnit插件
- Security插件
- Session插件
- EasyRoute插件
- http路由
- ProcessRpc插件
- AutoReload插件
- AnnotationsScan插件
- Tracing-plugin插件
- MQTT插件
- Pack插件
- AMQP插件
- Validate插件
- Uid插件
- Topic插件
- Blade插件
- CsvReader插件
- hashed-wheel-timer-plugin插件
- 使用篇-HTTP
- 路由
- 靜態文件
- 路由定義
- 修飾方法
- 路由分組
- 資源路由
- 端口作用域
- 異常處理
- 跨域請求
- 路由緩存
- 控制器
- 控制器初始化
- 前置操作
- 跳轉和重定向
- 異常處理
- 請求
- 請求對象
- 請求信息
- request消息
- response消息
- stream消息
- url接口
- 驗證器
- 內置驗證器
- 內置過濾器
- 使用篇-WS
- 如何使用
- 路由
- 使用篇-TCP
- 插件篇-PluginSystem
- 微服務篇-ESDCloud
- CircuitBreaker插件
- SaberCloud插件
- 分布式鏈路追蹤系統
- Consul插件