zoukankan      html  css  js  c++  java
  • SOA/微服务-简介

    1 什么是SOA架构
    SOA是Service-Oriented Architecture的首字母简称,它是一种支持面向服务的架构样式。从服务、基于服务开发和服务的结果来看,面向服务是一种思考方式。其实SOA架构更多应用于互联网项目开发。
    为什么互联网项目会采用SOA架构呢?随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,迫切需一个治理系统确保架构有条不紊的演进。 用途:SOA解决多服务凌乱问题,SOA架构解决数据服务的复杂程度,同时SOA又有一个名字,叫做服务治理

    2 SOA的好处

    1. 松耦合:由于服务自治,有一定封装边界,服务调用交互是通过发布接口。这意味着应用程序不感兴趣的服务如何被实现。
    2.位置透明:服务的消费者不必关系服务位于什么地方。
    3.可在异构平台间复用。可以将遗留系统包装成服务。
    4.便于测试,能并行开发,较高可靠性和良好可伸缩性。

    3.什么是微服务架构?
      微服务是指开发一个单个 小型的但有业务功能的服务,每个服务都有自己的处理和轻量通讯机制,可以部署在单个或多个服务器上。

      微服务也指一种种松耦合的、有一定的有界上下文的面向服务架构。也就是说,如果每个服务都要同时修改,那么它们就不是微服务,因为它们紧耦合在一起;如果你需要掌握一个服务太多的上下文场景使用条件,那么它就是一个有上下文边界的服务,这个定义来自DDD领域驱动设计

    4. 

    微服务优点是什么?

    • 每个微服务都很小,这样能聚焦一个指定的业务功能或业务需求。
    • 微服务能够被小团队单独开发,这个小团队是2到5人的开发人员组成。
    • 微服务是松耦合的,是有功能意义的服务,无论是在开发阶段或部署阶段都是独立的。
    • 微服务能使用不同的语言开发。
    • 微服务允许容易且灵活的方式集成自动部署,通过持续集成工具,如Jenkins, Hudson, bamboo 。
    • 一个团队的新成员能够更快投入生产。
    • 微服务易于被一个开发人员理解,修改和维护,这样小团队能够更关注自己的工作成果。无需通过合作才能体现价值。
    • 微服务允许你利用融合最新技术。
    • 微服务只是业务逻辑的代码,不会和HTML,CSS 或其他界面组件混合。
    • 微服务能够即时被要求扩展。
    • 微服务能部署中低端配置的服务器上。
    • 易于和第三方集成。
    • 每个微服务都有自己的存储能力,可以有自己的数据库。也可以有统一数据库。


      4. 微服务架构的缺点是什么?

      • 微服务架构可能带来过多的操作。
      • 需要DevOps技巧 (http://en.wikipedia.org/wiki/DevOps).
      • 可能双倍的努力。
      • 分布式系统可能复杂难以管理。
      • 因为分布部署跟踪问题难。
      • 当服务数量增加,管理复杂性增加。
  • 相关阅读:
    深挖 GIL锁
    numpy小入门
    IPython和Jupyter notebook
    LINUX+Vmware+SVN的配置和安装
    windows下使用火狐浏览器插件AutoProxy+MyEnTunnel+SSH访问海外站点(转)
    无法打开键: UNKNOWNComponentsBE1FB738077DBE490AF18C3B9B1A1EE8E5F5286B58B542741A00A0A9AA420B27
    如何将软件测试和数据库联系在一起(转)
    接口测试第十二课(fidller过滤)(转)
    android、IOS和手机基础知识
    广州女生手机被偷 里面的身份证出卖了支付宝密码丨丢手机后必做6件事(转)
  • 原文地址:https://www.cnblogs.com/LinuxSuDa/p/8510615.html
Copyright © 2011-2022 走看看