• SOA和微服务


    概念

    SOA:

    SOA 解决了传统 IT 系统重复建设和扩展效率低的问题,但其本身也引入了更多的复杂性。SOA 最广为人诟病的就是 ESB,ESB 需要实现与各种系统间的协议转换、数据转换、透明的动态路由等功能。

    当然,SOA 的 ESB 设计也是无奈之举。回想一下 SOA 的提出背景就可以发现,企业在应用 SOA 时,各种异构的 IT 系统都已经存在很多年了,完全重写或者按照统一标准进行改造的成本是非常大的,只能通过 ESB 方式去适配已经存在的各种异构系统。

    微服务:

    Martin Fowler:

    In short, the microservice architectural style is an approach to developing a single application as a suite of small services, each running in its own process and communicating with lightweight mechanisms, often an HTTP resource API. These services are built around business capabilities and independently deployable by fully automated deployment machinery.

    small、lightweight、automated

    区别:

    微服务陷阱:

    服务划分过细,服务间关系复杂
    服务数量太多,团队效率急剧下降
    调用链太长,性能下降
    调用链太长,问题定位困难
    没有自动化支撑,无法快速交付
    没有服务治理,微服务数量多了后管理混乱

    讨论:

    微服务的成功要依赖基础设施

    而service mesh就是嫌弃微服务基础设施太庞大了,需要应用感知

  • 相关阅读:
    Extension Methods (C# Programming Guide)
    ArraySegment
    git config
    0.0.0.0 IPAddress.Any 【】127.0.0.1 IPAddress.Loopback 【】localhost
    public static float CompareExchange(ref float location1,float value,float comparand)
    ConcurrentDictionary中的 TryRemove
    enum类型
    Array.Copy vs Buffer.BlockCopy
    伴随待字闺中的生命周期分析
    Twitter实时搜索系统EarlyBird
  • 原文地址:https://www.cnblogs.com/huilei/p/10511272.html
Copyright © 2020-2023  润新知