传统项目微服务改造心得
1.抽取公共组件
2.建立注册中心
3.抽取服务提供者,在一个子工程当中,仍然是mvc分层思想。
4.把service层的接口添加requestMapping注解,作为http服务暴露出去,以供其他微服务调用(Feign)
微服务和普通服务的区别:体量轻,容易维护和迭代,快速上线,解耦,针对性扩缩容,多了一个暴露service的步骤,来供服务间相互调用
5.新建bootstrap.yml用来存放eureka配置,原因是涉及到配置文件的加载顺序
6.拆分数据源到独立的database instance 或者schema
7.为什么先从商品域开始?
因为商品域对其他模块的依赖少,属于底层的领域,其他领域都依赖于商品域,所以最先剥离商品域。比如订单域里面很多对商品域的调用,如果先剥离订单,里面很多方法会报红。
剥离顺序:公共(比如公共组件,注册中心等)->底层域->上层域
原则:领域模型,流量模型,过粗过细都不好。