最近跟朋友在沟通,问我私下作的开发平台支不支持拆分成多个微服务,让可以支持水平扩展.
我回去细想了一下,确实,现在做项目,如果不搞成多个微服务,都不好意思说,我是搞IT的....拆分目标:
支持ALL in One, 即还是可以单体应用部署,这样在小企业可以快速实施,因为小企业对性能要求不高
支持多个应用服务,各服务的相互独立,服务之间的通讯使用dubbo,这样降低耦合,可以快速持水平扩展...访问日志
我自己做的平台,还不错吧,前台后台都是自己一个做的.暂时供学习用,后面可能考虑开源.
回归主题,我们开始对平台的功能进行分解,划分哪些需要微服务化的,哪些不需要....自动建表功能
自动建表其实就是内部的一个功能,在应用启动时,根据PO对象自动建表,这个不可能做到微服务化,只能做为一个系统的组件
自动建表的功能,如有兴趣,请参考我的文章
给mybatis添加自动建表...,自动加字段的功能
数据过滤功能
数据过滤功能有两部分,分为过滤的拦截,及过滤功能的设置
过滤的拦截应该做为一个组件,即一个功能jar包来合并成各个微服务中,
而过滤功能的数据管理作为一个微服务