关于swoole websocket 推送问题

新手上路,请多包涵

问题描述

各位你们好。目前本人遇到一个问题就是在客户端连接后端时候用websocket 给客户端每秒推送一些数据。我这块怎么设计呢

问题出现的环境背景及自己尝试过哪些方法

想着把fd 存入redisn 然后定时 每秒中执行一个方法,方法里面就是取出来 fd 然后批量发送

相关代码

// 请把代码文本粘贴到下方(请勿用图片代替代码)
public function onMessage(swoole_server $server, \swoole_websocket_frame $fram)

{
    // TODO: Implement onMessage() method.
    if (!$fram->data) {
        echo "error 1params \n";
        return false;
    }

    $params = json_decode($fram->data, true);
    var_dump($fram->data);
    if (!isset($params['param']) || !$params['param']){

        echo "error 2params \n";
        return false;
    }
    $port  = $server->port;
    var_dump($port);
    if ($port == 8715){
    
    

你期待的结果是什么?实际看到的错误信息又是什么?

阅读 2.9k
3 个回答

没使用过swoole,用过workerman。定时发消息无非就是客户端定时请求,或服务端定时推送。
服务端:不知道swoole里是否有类似定时器的功能,或者直接在服务器里添加定时任务执行php脚本。
客户端:类似websocket心跳,每次请求服务器返回数据

workerman 里有time 方法

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题