业务流程是这样的,用户小程序扫码设备进入选择充电界面这时候会连接一个 WebSocket 并订阅一个设备的消息主题。当用户选择端口开启充电时,服务器会下发指令给设备,设备开启充电时会返回开启端口成功的指令到服务器,在服务再将消息处理之后使用 ws 推送给前端小程序表示订单已开启。
目前出现的问题是用户扫码开启端口充电时后台没有推送 WS 消息,导致订单处于为正常开启的状态(故障)其实设备已经回复开启成功了但是服务器还没有处理过来。出现问题的时间都是高峰期(下午六七点)。系统到这个点进行中订单有 800 多个。但是系统有时候会出现此问题有时候有没有。
目前问题不好确定导致不好下手解决,根据观察到的问题可能是出在高并发,WebSocket
使用的 Java 开发,处理设备业务消息使用线程池,WebSocket 、单服务、服务器 8 核 16G 。麻烦各位 V 友帮忙分析下。有好的设计思路和框架也可以向我提供。我可以跟公司申请有偿