点击空白处退出提示
作品详情
技术架构:Netty + Spring + SpringBoot + MyBatis + Zookeeper + Elasticsearch + Minio + Redis+ Thymeleaf
前端技术:Html + Css + Js + JQuery + Vue + ElementUI
责任描述:
1. 参与前期的需求分析设计、数据库设计;
2. 服务端架构:服务端使用Netty框架搭建设计,使用Zookeeper监听订阅机制实现分布式部署,根据Spring类路径扫描和容器原理实现Websocket长链接和Http请求映射到对应方法;
3. API调用链路:使用JavaAgent插装的方式修改字节码,实现API接口、方法、数据库访问的调用过程日志收集,使用责任链模式对收集的日志清洗。通过自定义RPC远程调用服务异步保存日志到ElasticSearch,提升开发效率,降低服务端负载。通过分页方式查询出API接口日志,异步查询调用链路,通过递归构建父子树;
4. 登录模块:通过账号、密码和验证码验证登录管理系统,使用Redis持久化登录状态,通过设置过期保持一定时间登录有效,每次请求都更新过期时间,解决登录续签问题;
5. APP版本管理模块:管理员管理APP包信息,上传安装包保存到服务器,采用分片技术上传安装包,解决大文件上传慢需要重传的风险;
6. 灰度管理模块:管理员收集用户信息,将用户资料录入,按地区、工号或渠道分类以及切换灰度。用户访问后获取用户是否有权限使用新版APP与PC端通信。
7. 通知消息:管理员收到最新或预发布公告、通知等信息,将信息录入并设置发布时间发布,推送运用Zookeeper的watcher订阅节点机制,向Websocket长连接服务发送订阅消息。
8. 在线设备模块:登录时运用设备Id作为唯一标识,发送到后端进行持久化设备信息到Redis中,使用Zset有序集合按登录时间打分记录用户索引,通过索引将找到Hash中设备详情保存,实现排序分页查询在线设备。
9. 服务健康:主要查看Websocket集群中的服务状态,通过查看Zookeeper关联的Websocket服务节点列表。
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态
评论