Spring Cloud微服务实战(一)-- 什么是微服务

2018年4月8号,尝试性的写个人的第一篇博客,同时也开启了我的微服务之旅

参考书籍--《Spring Cloud 微服务实战》翟永超

(一)什么是微服务

    “微服务”一词源于Martin Fowler的名为Microservices的博文,它的主旨是将一个原本独立的系统分割成多个微型的服务。与传统的分布式中通过分散服务器来分担系统压力的方式相比,微服务则是以切割系统功能的方式来细化整个系统架构,因为不同的系统功能分布在不同的服务器上,所以一方面实现了服务之间的解耦,一个服务的修改或者出错都不会影响其他的服务;另一方面也使得人们可以根据不同的服务去配置不同性能的服务器,使得整个系统的部署变得更加切合实际。

    每一个被拆分的小型服务都通过RESTful API的方式进行通信协作,它们各自维护着自身的数据存储,业务开发,测试以及部署机制。由于各个服务之间仅以http通信方式联系,所以各个服务之间甚至可以用不同的语言来实现(个人觉得这是微服务的一大亮点)。

(二)微服务的优缺点:

    优点:避免了单一应用中系统过于臃肿的问题;一个功能的修改以及部署不会影响其他功能的运行;服务是独立部署的,我们可以方便地为每个服务评估性能容量;

    缺点:运维困难,因为不同服务运行在不同的进程中,运维成本提高;服务之间是以http通信方式联系的,所以不同服务之间必须有严格的接口管理;网络延迟,分布式事务,异步消息等问题;

(三)微服务的实施

1.服务组件化:以组件方式划分系统功能,方便修改,管理,升级系统功能;

2.按业务组织团队:不同功能,不同要求,划分不同的团队,降低团队间的耦合度;

3.去中心化管理数据:不同服务管理自身的数据(共享数据除外);

4.容错设计:避免因一个服务的出错影响其他服务进而导致整个系统的崩溃,做好每个服务的监控工作和日志记录;

5.去中心化治理:针对不同业务选择不同的技术平台。     

(四)Spring Cloud简介

  spring Cloud是一个基于spring boot的微服务开发框架,包含了众多的子项目。它为微服务架构中的许多操作都提供了良好的支持,是spring社区中一个大型的综合项目。

    Spring Cloud的学习是我接触微服务的一条重要路径,我以博文的方式记录自己微服务的学习历程。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值