どのようなSOAのアーキテクチャ?

https://blog.csdn.net/u013343616/article/details/79460398

 

SOAとは何ですか?SOAは、英語サービス指向アーキテクチャーである中国は、中国のサービス指向プログラミングを意味し、それは考え方、方法論、分散型サービスアーキテクチャ(特にBaiduの)です。

     用途:SOAをSOAは、サービスガバナンスと呼ばれる、名前を持っていながら、データ・サービスの複雑さに対処するために、マルチサービス、SOAアーキテクチャの厄介な問題を解決します。

     我々は(に統一によって分散)システムアーキテクチャの進化に目を通します。

   

        私たちのプロジェクトが比較的小さいとき、私たちは一つだけのシステムを持っており、データの量を増やし、サーバー上ではなく、より多くのプラットフォームとして、それらを一緒に書き込み、我々はサブライブラリーを通過する必要があり、マルチデータベースモジュールは、あまりにも対応するサーバー上に置かれ、各モジュールは、独自のサブシステムを呼び出すことができます。

     

     我々のシステムの迅速さらに複雑で、私たちはさらにシステムのパフォーマンスを向上させるために持って、我々は、SOAは、一般的に大規模なプロジェクトのために使用されるため、複数のサブシステムは、直接、より複雑な、(お互いを呼び出し、複数のサブシステムに複数のモジュールを持っていますそれは一般に、全システムが統合されることはありませんが、複数の分割が行われたサービスは、)お互いを呼び出します。複数のサービスの下で、当社の電気の供給UIタスク受注がデータバスシステムを介して相互に直接呼び出すと、サブシステムはそれぞれ、のために呼び出すことができます。

     エンタープライズデータバス:サービスとは何かある場合、エンタープライズ・データ・バスは、サービスを転送するアドレス、プロトコルに応じて、モジュールは、彼が役割データチャネルとして機能し、複数のサブを統合し、データ・バスは、ビジネスを気にしないデータバスはありませんが、トップは気にしません、データバスを見つけることだけ。

     いくつかの数字は比較的明確にする必要があり上には、綿密な事業で、我々はサービスを提供するために、全体で各サブシステムの端から、システム、データ、およびサービスの、すなわち分割を調整しなければなりませんでした。

     また、ポイントに言及すると、その図の下にある、以下のIPライブラリおよびサブシステムは、いくつかの公共サービス機能が上向きに提供されている、それはまた、SOA方法論の一部です。

二、SOAの主な利用シナリオ、下図のように:

   

通过上面的图我们可以看出,多个子系统直接相互交互,相互调用非常凌乱,这样我们就很不爽,所以我们就用到了我们的SOA架构,SOA又叫服务治理,SOA就是帮助我们把服务之间调用的乱七八糟的关系给治理起来,然后提供一个统一的标准,把我们的服务治理成下图所示,以前我们的服务是互相交互,现在是只对数据总线进行交互,这样系统就变得统一起来。

统一标准:各系统的协议、地址、交互方式。

新的交互方式:各个系统分别根据统一标准向数据总线进行注册,各子系统调用其他子系统时,我们并不关心如果找到其他子系统,我们只招数据总线,数据总线再根据统一标准找其他子系统,所以数据总线在这里充当一个只路人的作用。

SOA的好处:

  1、降低用户成本,用户不需要关心各服务之间是什么语言的、不需要知道如果调用他们,只要通过统一标准找数据总线就可以了。

 2、程序之间关系服务简单

 3、识别哪些程序有问题(挂掉)

缺点:提示了系统的复杂程度,性能有相应影响。

三、数据总线是什么?

      其实我在上面写了,数据总线是起到调度服务的作用,数据总线不是集成服务,数据总线更新一个调度框架,每个服务需要根据约定向数据总线注册服务,那么如何注册那?其实数据总线就像一个字典结构,

      数据总线里面一个key对于一个value,key指的是服务名,value则是服务的调度方式,还有一点需要说明的是,数据总线只是指路人,服务是不经过数据总线的,如上图的黄色线的路径。

     数据总线通过域名解析实现:一个域名绑定多台服务器,ajax也可以,dns也可以,解析域名嘛。

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

     

おすすめ

転載: www.cnblogs.com/mark5/p/11655427.html