1. 熟练MVC架构模式,熟练运用Spring、SpringMVC、Mybatis等JAVAEE轻量级框架。
2. 掌握非关系型数据库Redis使用。
3. 熟练使用 linux 常用命令。
4. 掌握SpringBoot 框架简化开发,掌握Spring Cloud Alibaba旗下多个微服务组件。
5. 掌握CI/DI(Jenkins)的部署问题。
6. 熟悉Nginx服务器,以及Maven,Svn,Git等项目开发及管理工具。
7. 熟悉k8s服务的搭建和各个服务之间的搭建 掌握Docker容器化运用。
8. 熟悉rabbitmq等消息的队列使用。
9. 熟悉前端vue(html,css, ajax)等一些前端技术。
由于单体架构业务量根本满足不了当前业务的需求,功能模板增加需要频繁的升级业务需求加上微服务架构兴起,在该公司有意单体服务架构转向成微服务架构。
我的工作任务:
1. 参与基础服务架构设计,框架及技术的选型讨论,给出合理建议及流程梳理
2. 管理4人团队,拆分业务模块,重构原先代码 保证业务流程正确。
3. 迁移数据库,由单库多表转多库多表。
4. 编写k8s部署文件等相关组件的配置文件。使用kubesphere 搭建和部署多个模块的服务和选型的中间件(redis哨兵,rabbitmq,nacos2.0.3,elasticsearch)
5. 后期维护 参与编写业务功能需求 优化代码bug 保证系统的稳定性。
技术解决方案:
1.在注册环节会出现高并发,采用了redis的lua脚本把持操作的原子性。关于会员分配(800万)会员池 是否分配采用redis的bitmap技术进行标记
2.接口日志进行切面日志拦截,系统日志收集监控, 采用elasticsearch高性能日志框架搭建kibana能更好的展示系统,各个系统的接口对接问题。
3.抽取公共抽象基类: 代码复用
对于此次服务的升级,做到了提高应用的性能。对于以后需求添加,不会去影响其他模快,保证业务使用的稳定性。