微服务入门级简介(通俗易懂)

微服务架构(Microservice Architecture)是一种架构概念,旨在通过将功能分解到各个离散的服务中以实现对解决方案的解耦。你可以将其看作是在架构层次而非获取服务的

类上应用很多SOLID原则。微服务架构是个很有趣的概念,它的主要作用是将功能分解到离散的各个服务当中,从而降低系统的耦合性,并提供更加灵活的服务支持。

概念:把一个大型的单个应用程序和服务拆分为数个甚至数十个的支持微服务,它可扩展单个组件而不是整个的应用程序堆栈,从而满足服务等级协议。

定义:围绕业务领域组件来创建应用,这些应用可独立地进行开发、管理和迭代。在分散的组件中使用云架构和平台式部署、管理和服务功能,使产品交付变得更加简单。

本质:用一些功能比较明确、业务比较精练的服务去解决更大、更实际的问题。

举例说明:如果把一个服务比作一个饭店。

如果饭店是一个路边煎饼摊那老板、服务员和厨师基本上是一个人。一天营业的人员基本不是很很多服务人员基本上是来一个走一个的顺序型的串行服务。

如果是一个夫妻店,那基本上是一个作为厨师。一个人作为收银员、传菜服务员的角色服务人员有所增加。

但是如果在继续扩大规模则会是厨师增加、服务人员增加。各个岗位间的协调合作就需要不断的完善。

下面详细讲一下一个大型饭店的流程(此处贴合微服务示例)

比如现在有一家餐厅

为了确保服务的质量,也是做足了准备。我们配备一名或者多名大堂经理,戴着专业的蓝牙耳机在有条不紊的协调着各个服务小组。
这三位经理是微服务中非常关键的“服务注册中心”,通常用 eureka 实现,三位经理,确保服务高可用。

 

后厨人员明确分工,紧锣密鼓的准备着:有两组人专职烤全羊,有两组人负责烤串,有一组人负责拌小菜,还有一组人负责酒水和餐具。
他们是微服务中按照业务被拆分的各种“服务提供者”(Provider),每种服务都有一组人在提供,这叫服务的多实例,确保服务高可用。

 

而不同桌的客户坐等想用!我们就是微服务中的“外部消费者”(Consumer)。

 

当美味陆续上桌了,众人开始推杯换盏,很快就盘子“见底儿了”,于是各组都在呼唤服务员添菜撤空盘。这时有一组服务员专门过来应酬大家的要求,确保满足大家的服务要求。他们就是微服务中的“服务网关”,负责将客户端的请求进行统一的协调传递到后厨。

羊排最受大家的喜欢,成为“稀缺资源”,供不应求。服务员上羊排时,先按批上,一批提供给几组人,这个就是微服务中的“服务限流”。
当每组都拿到羊排之后,有几组很快就消灭没了。于是,继续不停呼唤服务员要羊排,这时候服务人员虽然应答了大家的需求,可是羊排补充的速度逐渐下降,开始用肉串替代羊排了,这个就是微服务中的“服务降级”。
再后来羊排没有了,后续再要羊排就直接被告知已上完,这个就是微服务中的“服务熔断”。服务限流、服务降级和服务熔断属于微服务中服务运行时的服务治理(Governance)。

这个场地的服务包含:备料、初加工、菜品制作到按需上菜、撤盘、添菜,这个过程就是 “DevOps”,备料、初加工和菜品制作是 Development;按需上菜、撤盘、添菜是 Operations。Dev 和 Ops 的无缝衔接,确保了这里提供了完美的服务给顾客。

这个场地同时接待很多客人,如何避免有人重复领取哈根达斯冰淇淋(限量的)?我们在领取哈根达斯时,服务员会看验证单,知道我们是否已经领取过,这个就是微服务中的“服务鉴权”,服务只提供给有授权的消费者。

如此我们饭店的整个流程就完善起来完成了客户的就餐服务

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

桃树_李树

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值