从多个方面理解微服务架构

定义方面

微服务架构风格是一种将一个单一应用程序开发为一组小型服务的方法,每个服务运行在自己的进

程中,服务间通信采用轻量级通信机制(通常用HTTP资源API)。这些服务围绕业务能力构建并且可

通过全自动部署机制独立部署。这些服务共用一个最小型的集中式的管理,服务可用不同的语言开

发,使用不同的数据存储技术。

概念方面

微服务是设计层面的东西,一般考虑如何将系统从逻辑上进行拆分,也就是垂直拆分。微服务可以

是分布式的,就是可以将不同服务部署在不同计算机上,当然如果量小也可以部署在单机上。

解决问题方面

微服务解决的是系统复杂度问题: 一般来说是业务问题,就是在一个系统中承担职责太多了,需

要打散,便于理解和维护,进而提升系统的开发效率和运行效率,微服务一般来说是针对应用层面

的。

部署方面

微服务的应用可以部署在是同一个服务器,不一定是分散在多个服务器上。微服务架构是一项在云

中部署应用和服务的新技术。微服务架构是一种架构模式,它将一个复杂的大型应用程序划分成多

个微服务,这些小型服务都在各自独立的进程中运行。

耦合度方面

微服务相比分布式服务来说,它的粒度更小,服务之间耦合度更低,由于每个微服务都由独立的小

团队负责,因此它敏捷性更高,分布式服务最后都会向微服务架构演化,这是一种趋势,不过服务

微服务化后带来的挑战也是显而易见的,例如服务粒度小,数量大,后期运维将会很难。

SOA架构和微服务架构关系

SOA为 “面向服务的架构”,它是一个组件模型。SOA架构将应用程序不同功能单元(称为服务)进行

拆分,这些服务通过定义良好的接口联系起来

  • 服务之间通过相互依赖或者通过通信机制,来完成相互通信的,最终提供一系列的功能。一个服务通常以独立的形式存在与操作系统进程中。各个服务之间通过网络调用 。

  • ESB就是模块连接的脚手架,用它来连接各个服务节点。它做了消息的转化解释和路由工作,让不同的服务互联互通。

缺点

1、系统和服务界定模糊

2、服务接口协议不固定,不利于系统维护

微服务架构是SOA架构的升级版解决了SOA架构中模块之间的访问可能出错的问题,微服务架构将单一模块作

为一个独立的应用进行开发部署,因为每个应用都是独立的,他们之间的耦合性很低,可以灵活使用不同的编程语言进行开发。

优点:

  • 微服务架构自动部署

  • 服务集中化管理

  • 支持熔断机制

  • 耦合性很低

分布式和微服务关系

分布式属于微服务,微服务的意思也就是将模块拆分成一个独立的服务单元通过接口来实现数据的

交互。但是微服务不一定是分布式,因为微服务的应用不一定是分散在多个服务器上,他也可以是

同一个服务器。这也是分布式和微服务的一个细微差别。

微服务框架方面

常见主流微服务框架,比如:Dubbo、Spring Cloud、Spring Cloud Alibaba等等。

  • 9
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值