微服务改造过程感受
- 代码分层的很重要
在原本的单体架构中,想要单独拆分一个模块出来单独的部署与运行,但是原本的代码层级混乱,给代码拆分和迁移增加了很多工作量。
例如,原本的单体架构大致可分为Controller/Service/Module+基本的配置常量。(在sprintboot中Module更多的阐述为entity)
理想情况下,将某个模块涉及到的Controller/Service+所有的数据entity拷贝出来,按照新框架的格式对相应的接口/拦截器等等进行修改即可。
但是,由于代码层次不明显,entity中存在调用各个service的方法,导致如果导入所有entity,则需要导入很多额外的包。