eddik 发表于 2018-11-6 12:08:16

Workerman2.0 框架增加Redis支持

  此文章是针对WM2.1.4版本写的一个Redis的扩展使用!如果对WM框架的基础知识不清楚的coder,请移步官方网站 http://www.workerman.net/ 学习;
  我们在聊天室的应用上进行修改,我们只关注Event.php这个文件;我们首先要引入我们自己写的redis类,类文件在附件中提供下载.
  我们在event.php文件中,引入写好的redis扩展类;代码如下:
....  
use \Lib\RedisCluster;
  
require_once ROOT_DIR . '/Lib/Redis.php';
  
//定义一个全局的redis资源句柄
  
$redis = null;
  我们如何来用呢?
  在onMessage函数中,我们来初始化;
/**  
    * 有消息时
  
    * @param int $client_id
  
    * @param string $message
  
    */
  
   public static function onMessage($client_id, $message)
  
   {
  
       global $redis;
  
       if(!($redis instanceof Redis)) {
  
         $redis = RedisCluster::getinstance();
  
       }
  

  
       .....
  做完以上操作后,你就可以在你的代码业务中使用$redis这个句柄了!
  使用方法:
global $redis;  
$redis->get('key');
  此方式引入,可能还不是最优方案,如果需要更加优化的方案,可以在workerman的 worker 启动时就初始化redis连接,这里我就不折腾了,如有不对之处,请指正。


页: [1]
查看完整版本: Workerman2.0 框架增加Redis支持