Pv6 流量占比 app
项目描述:
IPv6 流量占比 app,该系统分为 app 端和后端管理平台两部分,app 主要用于给用户手机所拥有的 app
进行流量监测(IPv4/IPv6),完成测速任务将数据上报回平台,进行数据分析,展示以及监控,后端管理平
台主要用于对任务的管理与用户的管理
技术要点:
1. SpringBoot + Mybatis + swagger
2. MySQL 数据库、redis 缓存数据库
3. nginx 实现反向代理、静态资源访问、以及负载均衡
4. 短信服务
我的职责:
1. 设计系统方案,输出设计文档
2. 项目负责人,负责项目后端管理平台整合、架构的实现
3. 完成项目用户认证、权限控制与绝大部分功能的落地实现
4. 负责数据的计算,图表展示,报表导出
5. 多线程处理上报的数据
IDC 网络检测平台
项目描述:
IDC 网络检测平台是一个用于用户对国内外网络进行检测的系统,提供多种检测功能,利用分布在全球的
电视以及手机终端,真实终端用户使用场景为视角,提供模拟终端用户体验的拨测服务。支持 ping 监测、
web 页面监测、http 监测、tcp 监测、视频监测、文件监测等。通过分析采集数据,定位以及监控用户网络
状况,提供异常告警等。
技术要点:
SpringBoot+SpringCloud+Mybatis 微服务架构
1.MySQL、ClickHouse 数据库、Redis 缓存数据库
2.用 redis 实现在线终端设计,定时任务以及分布式锁
3.利用 Kafka 消息队列进行数据上报,以及消费到 ClickHouse 以及其它存储平台
4.平台端展示数据计算,接口定义与开发
5.使用 zabbix 对系统进行监控
6.采用 nginx 进行负载均衡
我的职责:
1. 重新梳理老项目文档,重新设计方案及输出相应文档
2. 任务定时服务、拆分服务的重构,采用多线程,线程池实现对 redis 缓存数据的异步操作
3. 采用 AtomicInteger 实现对接口调用次数的计算,定时异步批量写入 redis,减少频繁写 redis 操作
4. 多线程情况下采用阻塞队列优化加锁带来的性能问题
5. 主导设计自定义注解基于 redis、AOP 实现分布式锁与本地锁,同时运用多种业务场景
6. 周期校验数据,宏观控制数据下发量,以及周期数据异常告警通知等
7. 提供数据可视化展示接口,代码优化与工具封装,sql 优化,性能提升了近 50%
8. 主导并设计宽带服务 0-1,并落地实现
9. 在并发情况下采用线程池、同时对多个接口的调用与数据处理,效率提升 50%
10. 完成千万级数据表插入的优化,任务插入、更新性能提升了 30%
11. 数据上报 kafka
12. 使用工厂,策略模式优化代码,提高了代码可阅读性与可维护性