V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
zxc1234
V2EX  ›  程序员

想问下 SOA 与微服务的区别

  •  
  •   zxc1234 · 2020-06-24 07:52:02 +08:00 · 2495 次点击
    这是一个创建于 1614 天前的主题,其中的信息可能已经有所发展或是发生改变。

    请问

    我上家公司用的微服务不是用 spring cloud,而是基于 dubbo 与 zookeeper,

    我现在这家公司用的是 SOA,想问下

    1.SOA 与微服务的区别是什么,应该也需要权限认证吧?没有负载均衡?

    2.我的理解 soa 架构和微服务都是服务之间的调用,也都是经过平台,SOA 经过企业服务总线,微服务经过

    zookpeerper,不知道我的理解对不对?

    5 条回复    2020-06-24 12:54:13 +08:00
    wc951
        1
    wc951  
       2020-06-24 08:49:40 +08:00 via Android
    soa 和微服务都是概念性的而不是技术性的,只提供了能力描述而不负责具体实现
    hantsy
        2
    hantsy  
       2020-06-24 09:07:35 +08:00
    以前看过国外的一些标题党的说法:
    Microservice = SOA done right
    Microservice = fine-grained SOA

    @wc951 SOA 时代本身产生了一些系列标准,而不仅是概念。只要你经历那个时代( 10 年前左右),比如 Java EE 世界的,WS,SOAP,WSDL, BPEL,JBI,JAC,Enperprise EventBus 等,产生很多类似于 MuleSoft 等专业的 SOA 方案的公司。SOA 基本是企业应用时代的产物,更多的强调 Components 之间互通,高效协作。

    微软在这方面产出多如牛毛。
    hantsy
        3
    hantsy  
       2020-06-24 09:21:08 +08:00
    Microservice 也不是空中楼阁,Redhat 有一本免费电子书讲 MS 的 Patterns 。Microservices 最初倡导者 Chris Richardson 维护了一个网站: https://microservices.io/ 。如果你 5 年前开始做 MS,网络上 Chris Richardson 随处可以这个名字。当然国人很少喜欢看一些标准(约定,规范),也很少关注前人踩过的坑。什么都是喜欢自己随意来一套,一个简单 REST 设计,V 站的人一些见识已经领教过了,REST API 都可以一团糟的设计,微服务当然可以自己任何打扮成自己的样子。
    hantsy
        4
    hantsy  
       2020-06-24 09:37:46 +08:00
    @zxc1234 不错,Event Bus 是 SOA 核心概念之一。其实不管他什么架构,还是其他语言写的系统 ,不同的领域的系统之间访问不难,只是繁琐。
    1,使用公开协议
    2,加一套完全隔离你要访问的系统对象
    zealon
        5
    zealon  
       2020-06-24 12:54:13 +08:00
    SOA 即面向服务架构,是一个很宽泛的概念,SOA 是面向宏观层面的架构,其带来的收益也最能在宏观层面体现,因此业界大多认为 SOA 的概念过于抽象、不接地气。可以理解为 SOA 是“模块化开发+分布式计算”。

    微服务则是把模块化的功能进一步拆分多个独立的服务,服务之间通过远程通信来交互。

    这里你说的企业服务总线,是中心化的一个组件,它可以接入各个系统提供的接口,然后以统一的格式进行输出,重点是中心化,不支持弹性扩容或缩容,性能有瓶颈,但是主要免电企业的,QPS 一般不会很大还好。

    而 zookpeepter 这类能力的组件,起到的作用是注册中心,可以实现服务自动发现和注册,所以支持扩容缩容,可以无限横向扩展来支撑微服务的性能提升,这就是和企业服务总线不一样的地方,他只是处理发现和注册,不进行消息的转发和处理,真正服务间的通信还是点对点直接调用。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1084 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 23:28 · PVG 07:28 · LAX 15:28 · JFK 18:28
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.