Swoole IO異步Redis 持續更新
安裝redis
目前只提供ubuntu的安裝方式,其他安裝方式請自行查找
sudo apt-get install redis-server
編譯安裝hiredis
hiredis下載地址
下載後 解壓並且目錄內
make -j
sudo make install
sudo ldconfig
也可以使用apt或yum安裝hiredis,請務必安裝dev包
Ubuntu:apt install libhiredis-dev
CentOS:yum install libhiredis-devel
啓用異步Redis客戶端 重新編譯swoole
編譯swoole時,在configure指令中加入–enable-async-redis
# cd 到下載的swoole源碼中去
./configure --with-php-config=[php安裝目錄(詳細目錄)]/bin/php-config --enable-async-redis
make clean
make -j
sudo make install
查看是否成功
php --ri swoole
如果出現 async redis client
或 redis client
則成功
可能遇到的問題
php-m 發現swoole消失或者是通過php --ri swoole沒有顯示async redis client 或 redis client
vi ~/.bash_profile
在最後一行添加 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
source ~/.bash_profile
簡單實現
<?php
/**
* Created by PhpStorm.
* User: dom
* Date: 19-2-22
* Time: 下午5:04
*/
$redisClient = new swoole_redis();
$redisClient->connect('127.0.0.1', 6379, function (swoole_redis $redisClient, $result) {
echo "connect" . PHP_EOL;
var_dump($result);
// 設置key value
$redisClient->set("key", "zzzz123", function (swoole_redis $redisClient, $result) {
var_dump($result);
});
// 獲取key
$redisClient->get("key",function (swoole_redis $redisClient, $result){
var_dump($result);
});
// 獲取所有key
$redisClient->keys("*",function (swoole_redis $redisClient, $result){
var_dump($result);
});
$redisClient->close();
});