◆ 熟练Java基础,多线程、集合等,学习过部分JDK源码
◆ 掌握常用数据结构和算法、计算机网络、操作系统等基础
◆ 熟练WEB应用、后台应用、通信应用、分布式系统架构和微服务、微信公众号开发,有基于netty开发mqtt、jt808协议经验
◆ 熟悉JVM原理,常使用一些JVM监控工具和指令定位生产问题
◆ 掌握主流的关系型数据库MySQL、oracle,有过SQL调优经验
◆ 熟悉各种框架或中间件原理,开发调试熟练(包括不限于mysql、redis、kafka、dubbo、springboot、springcloud、mybatis、mongodb、netty、ElasticSearch等)
◆ 良好的代码规范
◆ 熟悉Linux系统
项目名称:物联网平台
涉及技术:spring、springmvc、springboot 、redis、kafka、dubbo、mysql、mybatis、netty、zk、mongodb、mqtt、jt808
项目描述:物联网平台,整个平台包括多个子项目:设备通信网关、后台数据采集、后台数据分发、设备管理平台(后台)、C端用户APP;主要实现B端、C端用户的用户信息管理、设备订单管理、售后服务、设备远程监控和控制、设备数据采集、设备数据分发、第三方功能对接等
项目设计:
1、 设备通信网关负责识别设备信息并建立长连接通信,该模块是基于netty开发的分布式集群应用,实现设备连接、连接负载均衡、设备重连、mqtt/ 808/905等协议解析、心跳检测等功能
2、 后台数据采集是基于kafka、disruptor开发的分布式应用,消费kafka中的设备数据,沉淀到MySQL、mongodb等数据库;实现了设备实时轨迹计算、设备事件推送等功能
3、 后台数据分发是负责设备数据推送、基于netty、protobuf开发的分布式应用,分别实现客户端基础Jar包、推送服务端、连接负载均衡、重连、心跳、商户数据分类推送等功能
4、 设备管理平台是基于spring、dubbo实现分布式后台服务,该平台按业务模块划分分别实现各自的微服务,主要是包括面向B端的业务服务模块:用户信息管理、系统权限管理、单点登录、运维监控、设备订单、远程控制等
5、 APP主要负责给C端用户提供设备下单、远程监控、车辆/设备信息查询等服务
6、 整个项目整体上基于spring、dubbo、nginx等对B端或C端用户提供WEB服务,基于netty、kafka等提供设备连接与数据采集功能,基于mongodb、mysql等提供数据沉淀功能,其中又利用redis提供分布式缓存优化,sharding-jdbc提供分库分表优化,elk提供日志整合等
责任描述:
1. 设备通信网关的开发与维护,参与整体架构设计与代码重构,使网关可兼容不同设备的通信协议,集群具备横向扩展能力
2. 主导数据分发功能开发与维护,包括架构设计、代码编写、压测、部署
3. 数据采集的开发与维护,优化冗余内部缓存设计以及复杂的线程模型,降低单个应用所需内存,提高代码可读性;修改kafka分区消费为组消费,使集群具备扩展性
4. 负责分库分表设计与开发,优化因大数据导致mysql出现的IO性能瓶颈
5. 负责其他C端或B端应用业务服务开发
项目名称:物联网平台 涉及技术:spring、springmvc、springboot 、redis、kafka、dubbo、mysql、mybatis、netty、zk、mongodb、mqtt、jt808 项目描述:整个平台包括多个子项目:设备通信网关、后台数据采集、后台
由于该项目需要内网访问,已离职无法连接内网,因此只截了部分代码图片 项目名称:江苏物联网平台 涉及技术:springcloud、ribbitmq、mysql、mybatis plus、kafka、xxl-job、swagger等 项目描述:整个平台基于微服务开发,分为多