参考:https://www.cnblogs.com/renzhitian/p/6853289.html

是什么

SOA service-oriented architecture 面向服务的体系结构

这是一种服务架构设计思想,方法论,是分布式体系架构。

在SOA中,基础协议(可以叫做引擎,框架)是确定的,服务是在框架的基础上按既定的标准接入的。

作用

增加灵活性,无需改动架构就可以添加新服务。

减少架构复杂度。服务都是一套协议,易于开发,易于维护。

所以SOA思想适合于较复杂的大型后台项目。

服务治理

服务之间要相互调用,如果服务直接互联,就会出现以下场景:网络拓扑随着服务的增加呈几何增长,显得非常复杂和混乱。

在SOA中,客户端通过数据总线访问后台,再访问具体的服务。服务之间不直接互联,而是通过数据总线互相调用。

这样,数据总线起到了RouterService的功能。

心跳检测\负载均衡

数据总线还有一些高级应用,比如心跳检测,实现负载均衡等等,目前应用数据总线的有阿里的dubbo,还有zookeeper。

SOA思想的更多相关文章

  1. soa思想,就是远程服务调用

    dubbo是Java下的一套RPC框架(soa思想)

  2. Soa思想分布式服务webservice WCF

    什么是分布式事务 分布式事务就是指事务的参与者.支持事务的服务器.资源服务器以及事务管理器分别位于不同的分布式系统的不同节点之上.以上是百度百科的解释,简单的说,就是一次大的操作由不同的小操作组成,这 ...

  3. 集群、分布式、SOA、微服务、webService等思想的整理

    引子:前几天甲方问我,他用wpf弄个界面,能不能通过其他语言给他传输数据,我由此想到了webservice(此时此刻,我也没有用过webServices),作日翻阅了一些资料,对这块技术有了个大概的了 ...

  4. 企业 SOA 设计(1)–ESB 设计

    最近为公司完成了一个 ESB 的设计.下面简要说明一下具体的设计方案.   企业 SOA 整体方案 在前一篇<SOA.ESB.NServiceBus.云计算 总结>中说到,SOA 是面向服 ...

  5. 浅析深究什么是SOA?(转)

    http://blog.vsharing.com/fengjicheng/A1059842.html 阅读提示: 本文探讨SOA概念背后的核心内涵,如何将SOA落地的实务方法. 金蝶中间件作为全球领先 ...

  6. 浅析深究什么是SOA?

    浅析深究什么是SOA? http://blog.vsharing.com/fengjicheng/A1059842.html 金蝶中间件有限公司总经理 奉继承 博士 阅读提示: 本文探讨SOA概念背后 ...

  7. SOA与基于CDIF的API的联动

    几千年来,巴别塔的故事一直是人类面对的一个核心的困境.为了交流和沟通我们人类创造出语言,但沟通与交流仍然存在障碍……相同语言之间的沟通依语境的不同,尚且存在巨大的鸿沟,不同语言之间更是让人坐困愁城. ...

  8. 微服务、SOA 和 API对比与分析

    摘要: 对比微服务架构和面向服务的架构(SOA)是一个敏感的话题,常常引起激烈的争论.本文将介绍这些争论的起源,并分析如何以最佳方式解决它们.然后进一步查看这些概念如何与 API 管理概念结合使用,实 ...

  9. 理解web service 和 SOA

    什么是SOA? SOA的全称为Service Oriented Architecture,即面向服务架构.这是一种架构理念.它的提出是在企业计算领域将耦合的系统划分为松耦合的无状态的服务.服务发布出来 ...

随机推荐

  1. Struts页面跳转问题

    只有在web-INF中的jsp才可以不用加namespace名 <s:a action="systemIndexAction_turn" >跳转</s:a> ...

  2. CodeSign相关

    要让苹果App在真机上跑,需要私钥(PrivateKey),证书(Certificate)和描述文件(Provisioning Profile). (一) 安全基础: 1.非对称加密: 2.Hash码 ...

  3. Intellij IDEA 修改代码后自动编译更新

    Intellij IDEA 一些不为人知的技巧 问题描述: Intellij IDEA 调试修改时,改动页面和 java 文件后,无法立刻看到变化,需要手动重启服务. 问题原因: 在 IDEA tom ...

  4. 追求代码质量: 用 AOP 进行防御性编程

    原文出处: IBM中国 开发人员测试的主要缺点是:绝大部分测试都是在理想的场景中进行的.在这些情况下并不会出现缺陷 —— 能导致出现问题的往往是那些边界情况. 什么是边界情况呢?比方说,把 null  ...

  5. Android View中滚动相关

    方法   scrollTo: (内容的左上角)达到某个地点 scrollBy: 根据当前位置,再移动多少 属性:   mScrollX, 以下是文档解释   The offset, in pixels ...

  6. struts2 session登录

    session:记录于服务器端的信息,当客户端传来信息时候,判断是不是指定的信息. 常见应用:判断用户是否登录. struts具体的实现不写了,写主要的. 在action的方法中加入: ActionC ...

  7. 使用grunt中遇到的问题

    1.使用jshint进行代码检查时,grunt命令后报错: 因为出现了乱码,我猜测是因为编码原因导致的.遂在webstorm的setting中修改了编码为utf-8,问题解决.

  8. python中format()方法格式化字符串

    format()是python2.6新增的一个格式化字符串的方法,功能非常强大,有可能在未来完全替代%格式化方法,相比 % ,format()的优点有: 1 .格式化时不用关心数据类型的问题,form ...

  9. Python ip与数字的转换方式

    例子:IP:192.168.1.10 方法一: In [1]: bin(192)Out[1]: '0b11000000' In [2]: bin(168)Out[2]: '0b10101000' In ...

  10. Oracle数据库当前连接数、最大连接数的查询与设置

    在开发过程中Oracle数据库有时候连得上,有时候又连不上,提示如下异常“ORA-12519: TNS:no appropriate service handler found 解决”,可能是数据库上 ...