Red Hat Training

A Red Hat training course is available for Red Hat Fuse

22.2. 静的フェイルオーバーによる HA の有効化

概要

静的フェールオーバーで HA を有効にするには、次の手順を実行する必要があります。

レプリカの詳細をサービス WSDL ファイルにエンコードします

クラスター内のレプリカの詳細をサービス WSDL ファイルにエンコードする必要があります。例22.1「静的フェイルオーバーによる HA の有効化。WSDL ファイル」 は、3 つのレプリカのサービスクラスターを定義する WSDL ファイル抽出を示しています。

例22.1 静的フェイルオーバーによる HA の有効化。WSDL ファイル

<wsdl:service name="ClusteredService">
    <wsdl:port binding="tns:Greeter_SOAPBinding" name="Replica1">
        <soap:address location="http://localhost:9001/SoapContext/Replica1"/>
    </wsdl:port>

    <wsdl:port binding="tns:Greeter_SOAPBinding" name="Replica2">
        <soap:address location="http://localhost:9002/SoapContext/Replica2"/>
    </wsdl:port>

    <wsdl:port binding="tns:Greeter_SOAPBinding" name="Replica3">
        <soap:address location="http://localhost:9003/SoapContext/Replica3"/>
    </wsdl:port>

</wsdl:service>

例22.1「静的フェイルオーバーによる HA の有効化。WSDL ファイル」 に示す WSDL 抽出は次のように説明することができます。

3 つのポートで公開されるサービス ClusterService を定義します。

  1. Replica1
  2. Replica2
  3. Replica3

Replica1 を定義して、ClusterService をポート 9001 で SOAP over HTTP エンドポイントとして公開します。

Replica2 を定義して、ClusterService をポート 9002 で SOAP over HTTP エンドポイントとして公開します。

Replica3 を定義して、ClusterService をポート 9003 で SOAP over HTTP エンドポイントとして公開します。

クラスターリング機能をクライアント設定に追加します

クライアント設定ファイルに、例22.2「静的フェイルオーバーによる HA の有効化。クライアント設定」 に示すようにクラスターリング機能を追加します。

例22.2 静的フェイルオーバーによる HA の有効化。クライアント設定

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:jaxws="http://cxf.apache.org/jaxws"
       xmlns:clustering="http://cxf.apache.org/clustering"
         xsi:schemaLocation="http://cxf.apache.org/jaxws
         http://cxf.apache.org/schemas/jaxws.xsd
         http://www.springframework.org/schema/beans
         http://www.springframework.org/schema/beans/spring-beans.xsd">

    <jaxws:client name="{http://apache.org/hello_world_soap_http}Replica1"
                  createdFromAPI="true">
        <jaxws:features>
            <clustering:failover/>
        </jaxws:features>
    </jaxws:client>

    <jaxws:client name="{http://apache.org/hello_world_soap_http}Replica2"
                  createdFromAPI="true">
        <jaxws:features>
            <clustering:failover/>
        </jaxws:features>
    </jaxws:client>

    <jaxws:client name="{http://apache.org/hello_world_soap_http}Replica3"
                  createdFromAPI="true">
        <jaxws:features>
            <clustering:failover/>
        </jaxws:features>
    </jaxws:client>

</beans>