zoukankan      html  css  js  c++  java
  • SOA通俗释义

    SOA是面向服务的一种架构,他将许多模块共用的部分,都写成了一个服务,这样就避免了很多的重复工作,解决了大型企业多工厂,多地方办公但还还要统一更新的不足。优点很多很多了。

    我给你举个例子:比如说你现在拥有一家快速发展的小仓卖。最开始可能客户很少的,你自己看管着就能照看过来。那么你自己直接面对客户,直接从货架取货就能完成所有的业务了,那么你的这种架构就是C/S架构的。你就是C,Client.你的后台就是货柜。就是server.

    但是情况发生了变化。你的顾客突然增多了,并且是成数量级的增加。你该怎么办哪,你最初的想法肯定是增加人手。可是很快你就会发现,你增加了10个人,也只能同时面对10个客户,并且10个服务人员之间会有交叉,手忙脚乱的。你很快就知道了,这不是简单增加人手就能改变的,肯定是方法的问题。你就把这10个服务员分成了三拨,第一波6个人,只面对客户,他们的职责就是记录客户的需求,第二波2个人,他们别的都不作,就做统计客户的信息,分类的。第三波2个人,他们也就是到库房去取第二波人记录的顾客需要的物品,这个办法实行后,你发现虽然面对客户的只有6个人,但是他们同时接待的客户竟然可以达到了几十人。这其实就是B/S架构。第一波人就是浏览器。第二波人就是中间件应用服务器,第三波人就是数据库应用程序。

    再后来,你的仓买变成了连锁,你发现,你的这种模式也不能满足你的需要了。因为你的仓卖业务扩大了,有的个别仓卖还可以销售其他的东西,甚至可以做到贩卖飞机的各种零部件了,当然不是所有的仓卖所有的零件都有,西部的仓卖有飞机头零件,东部的仓卖有飞机的引擎。但是客户的订单只有你总部统一获得,而东西部的仓买并不能统一的快速的获得客户订单的变化。怎么办,你就考虑是否能将这个订单有一个专人来管理。他就是一个服务。不论总部或是下面的仓卖,凡是涉及客户订单的都去问他也就是调用他,很快,你发现你的问题解决了。并且这个解决的方法就是一个简单的SOA的应用。

  • 相关阅读:
    问题:Controller中Response的用法
    C#中字符串前缀@和$
    C#中Viewbag和ViewData的区别
    C#中Session和Cache的区别
    try catch捕获异常
    C#开发中,添加错误日志功能,并自定义错误页面
    数据库索引中,聚集索引和非聚集索引有何区别?
    String和StringBuilder的区别?
    C#函数,引用类型作为值参数,改变参数值后,形参也会改变.重新给实参赋值后,形参则不会改变.
    jQuery操作radio选中和取值
  • 原文地址:https://www.cnblogs.com/marslin/p/3854080.html
Copyright © 2011-2022 走看看