百金贷系统架构
一.系统版本迭代
v1 Play1.x全栈开发
Play1.x + MySQL
问题:
1. 缺少熟悉Play1.x的开发人员
2. JPA(Hibernate) ActiveRecord难以优化,导致MySQL数据库死锁频繁
3. Groovy模板引擎小众
v2 SSM
SpringMVC + MyBatis + Oracle
v3双账户
存管上线,开启双账户,加入消息队列
问题:
1. 开发人员集中开发同一个系统,冲突严重
2. 频繁新增的小需求,需要重启整个服务
3. 前端资源的CDN缓存问题
4. Restful url设计问题?命名问题?代码规范问题?跨层次调用问题?
v4 SOA服务化
* 基础服务(全局配置、文件存储、消息服务)
* P2P核心业务服务(用户、账户、订单)
* Web门户(主站/BBS/积分商城)、网关(通知服务/Restful API for H5 & App)
二.百金贷v4 TODO
* v4.0服务端Restful API实现,H5和APP保持界面和数据接口统一
1. 理解Restful
2. SpringMVC +Swagger2实现Restful API
3. 区分Bean和Dto,验证框架Hibernate Validator启用
4. H5 site工程化,全静态,独立部署
5. APP接口改造
* v4.1配置服务器Zookeeper部署,实现无重启修改配置项
* v4.2服务化拆分,实现核心业务与门户、网关解耦,单独部署