关于channel Client的问题

sorcerer

使用Channel\Client::on(​$event_name)的时候在单条内容过大回有延迟吗?如果有需要更改什么配置呢?
另外:
[attach]1396[/attach]
请问图中的这个pingInterval及定时器是用来做什么的啊
 

2063 2 0
2个回答

walkor

不会感到延迟,当然你别传递几百M上G的数据。
pingInterval 是定时发送心跳的时间间隔

  • sorcerer 2018-11-16

    你好。我想问一个比较基础的问题,
    我这边用channel做进程间的数据传输,其中一个event的on有延迟,那个event的数据格式是serialize序列化的数据大小大概在3M左右。频率高峰期每秒20条。
    这个我应该怎么去排查

  • sorcerer 2018-11-16

    延迟时间一般是3到6秒。长的时候会达到十几秒到1分钟,其他的event都是没有延时的。都是在同一台物理机上

  • sorcerer 2018-11-16

    另外,我还想了解一下channel server和client的内存回收机制,还望不吝告之或者告诉我应该翻阅什么资料也行,劳烦了~~多谢

walkor

峰值每秒20条3M数据传输这个造成延迟正常的,其中包含序列化反序列化等操作,走网卡(非127.0.0.1)的话就更慢了,因为有些网卡是百M网卡,传输60MB数据需要5秒左右。如果client之前连接是用的ip不是127.0.0.1改成127.0.0.1试下,这样不走网卡,速度会稍微快些。
 
workerman及其所有组件都遵循php自身的内存回收机制,详情参考php手册 http://www.php.net/manual/zh/features.gc.php

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