关于node和mysql并发处理的小问题
最近在学习node和mysql,用websocket写了个练手聊天程序。
设计的流程是这样的:
- 用户登陆时连接websocket,并存到一个数据结构中保存
- A用户发送信息给B时,在Node端的socket接收到信息,先存到数据库中,在sql执行成功的回调中通过socket发送给B,完成一次信息发送。
问题来了,如果是有多个用户同时发送信息,都走这个流程,这里node端的socket和mysql操作应该如何处理并发呢?
本人小白一个,只是突然好奇,若是哪里的理解有偏差,还望指出~
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
socket都有socketId的,在发消息之前,应该做 socketId和用户的绑定表,例如: SocketId=1 <=> UserA,SocketId=2 <=> UserB ,node端收到 收到消息后,要根据socketId找到对应的用户,然后存储消息。然后找到UserB对应的Socket,把A的消息发送给B