大佬们 1秒钟100条消息 应该怎么处理呢

w5w4

问题描述

我用thinkphp + gatewayworker写的聊天系统

直接在thinkphp调用gateway 100条消息发送耗时130毫秒左右

但是经过thinkphp读数据库 验证用户信息 再保存一遍消息 100条耗时就5秒钟了。。

而且好像这次的不允许玩 其他人发的消息也要排队 这种应该怎么处理呢 或者有什么其他解决方案吗

是我mysql环境没整好吗 T T

1451 5 0
5个回答

damao

把数据库逻辑暂时注释掉,看下速度多少,就知道是不是数据库影响了。

  • w5w4 2023-02-25

    没毛病 是数据库 没插数据库速度搜搜的

a178251115

消息redis 存储,读取,没必要每次都做mysql 读取
后面再异步任务根据情况一次存储到mysql

  • 暂无评论

保存这个不能用redis队列操作吗

  • 暂无评论
JY-Chen

题主解决问题了嘛?我也是这个问题。在下发第300条左右的消息后,每下发一条消息,耗时5秒。前面都保持在20条每秒的速度

  • 暂无评论
JackDx

简单阿 你是tp 发消息客户端用ajax请求 接口收到后直接转发在存数据

  • 暂无评论
年代过于久远,无法发表回答
×
🔝