不清楚是Redis的问题还是webman 看不太懂
大概的业务代码就是这里 拉取了店铺表的最小和最大的ID 然后每个店铺插入一条队列任务 然后就报上图中的内容
php内存溢出,128M内存都被占完了,但是看这个代码也不会占用这么大的内存
https://www.workerman.net/plugin/12
手册有说Client::send() 是异步的,数据会先存在本地。所以如果本地瞬间产生了几万条消息,那内存可能会超限。
Client::send()
感觉你应该用Redis::send(),它是同步的。
Redis::send()
昨天测试后太忙忘记回复了, 确实是这个问题,非常感谢
1、min和max应该都是全表扫描的吧?数据多的时候,不如按顺序及倒序各查询一条高效; 2、需要有点不明白,但还是问问:你的shop_id都是连贯的吗?
不连贯 队列里面有处理读取redis 读取不到shop_id就会跳过
大概的业务代码就是这里 拉取了店铺表的最小和最大的ID 然后每个店铺插入一条队列任务 然后就报上图中的内容
php内存溢出,128M内存都被占完了,但是看这个代码也不会占用这么大的内存
https://www.workerman.net/plugin/12
手册有说
Client::send()
是异步的,数据会先存在本地。所以如果本地瞬间产生了几万条消息,那内存可能会超限。感觉你应该用
Redis::send()
,它是同步的。昨天测试后太忙忘记回复了, 确实是这个问题,非常感谢
1、min和max应该都是全表扫描的吧?数据多的时候,不如按顺序及倒序各查询一条高效;
2、需要有点不明白,但还是问问:你的shop_id都是连贯的吗?
不连贯 队列里面有处理读取redis 读取不到shop_id就会跳过