workerman的websocket的send如何实现同步发送到客户端呢?

ragnar

workerman的websocket的send如何实现同步发送到客户端呢,就是在chatgpt的流式返回回调函数中每一次回调都send到客户端,现在是等chatgpt全部回调结束才循环发送到客户端,这个问题有没有解决方案呢?

933 1 0
1个回答

ersic
  • ragnar 2023-03-27

    您好,这个客户端用的是websocket链接服务器,不是hs的eventsource,这样服务器返回的时候只能用完websocket返回字符串,这个情况怎么解决上面的问题呢

  • ragnar 2023-03-27
        for ($i = 0;$i<5;$i++){
            $connection->send('111');
            sleep(1);
        }

    这种怎么分开返回呢

  • ragnar 2023-03-27

    maxSendBufferSize
    说明:
    int Connection::$maxSendBufferSize
    每个连接都有一个单独的应用层发送缓冲区,如果客户端接收速度小于服务端发送速度,数据会在应用层缓冲区暂存等待发送。

    此属性用来设置当前连接的应用层发送缓冲区大小。不设置默认为Connection::defaultMaxSendBufferSize(1MB)。

    此属性影响onBufferFull回调。

  • ragnar 2023-03-27

    每个连接都有一个单独的应用层发送缓冲区,如果客户端接收速度小于服务端发送速度,数据会在应用层缓冲区暂存等待发送。

    这个要怎么直接发送,而不继续在应用层缓冲区暂存等待发送呢?

年代过于久远,无法发表回答
×
🔝