课程表

Swoole基础

Swoole实例

工具箱
速查手册

Swoole Redis Server实例

当前位置:免费教程 » 程序设计 » Swoole

Swoole-1.8.14版本增加一个兼容Redis服务器端协议的Server框架,可基于此框架实现Redis协议的服务器程序。Swoole\Redis\Server继承自Swoole\Server,可调用父类提供的所有方法。

Redis\Server不需要设置onReceive回调。实例程序:https://github.com/swoole/swoole-src/blob/master/examples/redis/server.php

可用的客户端

  • 任意编程语言的redis客户端,包括PHP的redis扩展和phpredis库
  • Swoole扩展提供的异步Redis客户端
  • Redis提供的命令行工具,包括redis-cliredis-benchmark
注意:Swoole-1.8.0版本增加了对异步Redis客户端的支持,基于redis官方提供的hiredis库实现。Swoole提供了__call魔术方法,来映射绝大部分Redis指令。

编译安装hiredis

使用Redis客户端,需要安装hiredis库。下载hiredis源码后,执行

  1. make -j
  2. sudo make install
  3. sudo ldconfig

启用异步Redis客户端

编译swoole是,在configure指令中加入--enable-async-redis

  1. ./configure --enable-async-redis
  2. make clean
  3. make -j
  4. sudo make install

简单实例:

  1. $redis = new Swoole\Redis;
  2. $redis->connect('127.0.0.1', 6379, function ($redis, $result) {
  3. $redis->set('test_key', 'value', function ($redis, $result) {
  4. $redis->get('test_key', function ($redis, $result) {
  5. var_dump($result);
  6. });
  7. });
  8. });
  9. $cli = new Swoole\Http\Client('127.0.0.1', 80);
  10. $cli->setHeaders(array('User-Agent' => 'swoole-http-client'));
  11. $cli->setCookies(array('test' => 'value'));
  12. $cli->post('/dump.php', array("test" => 'abc'), function ($cli) {
  13. var_dump($cli->body);
  14. $cli->get('/index.php', function ($cli) {
  15. var_dump($cli->cookies);
  16. var_dump($cli->headers);
  17. });
  18. });
转载本站内容时,请务必注明来自W3xue,违者必究。
 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号