由于单体架构业务量根本满足不了当前业务的需求,功能模板增加需要频繁的升级业务需求加上微服务架构兴起,在该公司有意单体服务架构转向成微服务架构。
我的工作任务:
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.抽取公共抽象基类: 代码复用
对于此次服务的升级,做到了提高应用的性能。对于以后需求添加,不会去影响其他模快,保证业务使用的稳定性。