为了账号安全,请及时绑定邮箱和手机立即绑定

【九月打卡】第18天 SpringCloud微服务学习

标签:
Java

课程名称:SpringCloud  Finchley三版本微服务实战

课程章节:

第4章 服务拆分

主讲老师:廖师兄

课程内容:

   服务拆分原则,商品服务编码,订单服务编码

课程收获:

1、微服务如何拆分:

(1)、先明白起点和终点

起点:既有的架构形态(老项目、新项目)

终点:好的架构不是设计出来的,而是进化而来的。进化一直在演进

(2)、需要考虑的因素与坚持的原则

2、业务形态不适合微服务拆分的

(1)、系统中包含很多很多强事务场景的

(2)、业务相对稳定,迭代周期长

(3)、访问压力不大,可用性要求不高

3、微服务的特点:

(1)、一系列微小的服务共同组成

(2)、单独部署,跑在自己的进程里

(3)、每个服务为独立的业务开发

(4)、分布式的管理

https://img2.sycdn.imooc.com/632bbed5000145a915870863.jpg

 

4、服务拆分

(1).拆分功能,单一职责,高内聚,低耦合;

(2).关注点分离;按职责,按通用性(公共组件拆分);服务的粒度;

(3).先考虑功能再考虑数据;

(4).无状态服务

https://img1.sycdn.imooc.com/632bbefa00019f0915600864.jpg

https://img1.sycdn.imooc.com/632bbefa0001ad2215700870.jpg



 

5、如何拆数据:

(1)、每个服务都有单独的数据存储。

服务之间通过api进行访问通信,服务之间有隔离;

(2)、根据服务特点选择不同的数据库。

类型很丰富,对事物要求不高,可以选mongodb;搜索服务可选elasticsearch;对事务要求高的可以选支持关系型数据库,可选mysql.

(3)、难点在确定边界。 

每个服务有自己关系的业务与数据,怎么针对不同的服务来设计api接口;服务拆分后,需要别的服务的数据,需要考虑调用方式,需要考虑冗余数据到自己服务,如何增加聚合度。


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消