项目描述:该系统为公司客服的即时通讯系统,用于客服与用户实时聊天,解答用户问题。系统采用Netty提供的websocket保持客户端与服务器的长连接,进行消息传输;使用Kafka来解耦gateway应用与message应用,并进行消息的流量削峰;Gateway应用负责websocket链接的建立和客户端与服务器消息的传输和投递;Message应用负责存储消息并使用路由匹配的结果封装消息;项目职责:1. 路由功能设计和开发,包括轮询、最闲坐席优先、最小接待量坐席优先、最高优先级坐席优先等路由策略;最闲坐席优先使用Redis的sorted set实现,最小接待量坐席优先使用treeMap实现,使用数据库乐观锁实现客服会话数的并发控制;2. 路由排队功能设计和开发,使用redis list实现,对list中排队用户的更新使用redis分布式锁控制,并支持客户离线排队;3. 开发基于redis的分布式锁功能,并推广到其他项目组;4. 开发自动加密解密公共组件(Mybatis拦截器+注解实现),对用户敏感数据(如手机号、银行卡号等)进行自动加解密;5. 开发HttpInvoker服务监控组件,扩展HttpInvoker源码记录服务调用的ip、服务地址、服务名称等,用于服务监控;声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!

下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态
评论