微服务架构可以理解为一种架构风格,将一个大型复杂软件应用由一个或多个微服务组成。系统中的各个微服务可被独立部署,各个微服务之间是松耦合的。每个微服务仅关注于完成一件
荣幸回答,我将知无不尽,尽无不言。
在微服务框架的选择中最重要的一点就是 ESB并不是被淘汰,而是从集中式转变为分布式,需求让ESB发生了改变。
集中式ESB演化为分布式
微服务框架的变化就是,从集中式ESB 到 分布式ESB Service Mesh这是我们必须明白的一点,对于具体有那么不同和改变我归结以下几点:
ESB的服务之间都通过ESB总线互相访问,微服务中内部服务之间可以直接访问,外部服务通过网关接入
ESB的总线的功能拆开来就相当于微服务中以下几个独立的微服务
服务目录 和服务发现:都是解决服务注册和寻址问题
路由/协议转换/聚合和网关:区别是ESB中外部访问和内部服务之间访问都需要路由
消息传递和消息总线:区别是ESB同时提供异步和同步消息
验证和授权和独立的微服务: 区别是对微服务来讲这视为一个业务功能
ESB总线是集中化的,而微服务的细颗粒度使得横向扩容非常容易
ESB对服务进行统一管理,而微服务的复杂网络需要配合服务网格来管理
微服务的工作原理图
不是ESB过时,而是你的集中式ESB过时了,分布式ESB
总之微服务框架对于开发中只会越来越简便。