熟练使用 js ,html ,css
熟练使用 vue + element
熟练使用 springboot ,mybatis-plus
熟练使用 ssm 框架 ,netty 框架, 套接字编程 ,TCP/IP, IO/Nio
熟练使用 SQL 熟悉数据库的表设计, 基本原则
熟练使用 redis 缓存 ,Mqtt 消息队列,KAFKA 消息队列
熟练使用 idea ,maven, git
熟悉 zookeeper 相关操作 ,分布式锁的 api
熟练使用常见的 微服务 架构 ,SpringCloud-alibaba ,分布式架构常用组件
熟练使用 linux 常用的命令
熟悉多线程并发编程, 线程池的使用
熟悉 cdh ,scala ,spark, 熟练使用 docker 容器化部署操作,常用命令,可视化工具部署使用
项目名称 智慧社区协同平台 1.0
项目进度 2019 年 8 月-2020 年 12 月
软件架构
springboot+mybatis-plus+vue+element+redis+echarts 开发环境 Linux + IntelliJ IDEA + JDK8
项目介绍
该平台是 智慧社区大数据模块协同平台 2.0 的过渡平台,其中包括数据治理,数据工厂,系统管理三
大模块,数据治理包含了数据源的维护管理,数据源巡检连通性检测,数据源的数据对象管理,数据对象的
连通性巡检,数据库的驱动管理,数据字典的管理维护等,数据工厂在 2.0 平台里面升级,系统管理包括了
平台的菜单管理,角色管理,用户管理,部门管理等等
个人职责
1. 利用工厂模式和策略模式编写获取各个数据库的一些属性,包括检测但数据库的连通性,数据库的表,数据库表的字
段。数据库的类型和具体的数据源从数据源的 json 中获取 传入工厂动态获取各个数据库的实体,获取数据库的驱动,生
成数据库 Bean 封装数据库的 connection
2. 数据源的维护,前端页面编写包括了数据源的 IP PORT,数据源的具体实例,数据源的名称和数据库的驱动选择等等
3. 数据对象的维护,获取每个数据源下面的所有表,包括(Mysql,Oracle,Phoenix,Pgsql,Sqlserver 等等)
4. 数据库驱动的管理,各个数据库各个版本的驱动包进行管理,上传驱动包
项目名称 智慧社区大数据模块协同平台 2.0 基于 Zookeeper 实现分布式无中心节点处理任务
项目进度 2020 年 8 月-2021 年 1 月
软件架构 Netty + Zookeeper 项目介绍
在试运行三个月的时候,需要动态的添加节点来处理成千上万的任务,因此需要改变任务处理模块的架构,
基于 zookeeper 可以实现多个节点将自身的地址注册到 zookeeper 上,基于分布式锁可以实现多个节点只有
一个能处理任务保证任务的单一处理,基于 netty+zookeeper 写寻址算法可以实现下发任务
个人职责
1. master 和 worker 节点的任务划分 master 分发任务给 worker 处理,worker 处理任务提交大数据模块并且响应给
master 任务处理结果
2. 引入 zookeeper 基于节点注册和监听 实现 master 和 worker 的节点发现
3. 使用 ip 寻址权重算法,找到合适处理任务的 worker ip
4. Netty 下发任务实例给 worker 处理
5. 基于 InterProcessMutex 在 master 节点中处理代码逻辑实现任务同时只有一个 master 可以处理任务