この章の内容は次のとおりです。
Coherence for Javaディストリビューションは、JavaベースのExtendクライアントの構築および使用の際に使用します。Coherence for Javaのインストールは、Oracle Coherence for Javaのインストールを参照してください。
Oracle Coherence for C++ディストリビューションは、C++ Extendクライアントの開発および実行の際に使用します。ディストリビューションの最新バージョンは、Oracle Technology NetworkのCoherence製品に関するページからダウンロードできます。
http://www.oracle.com/technology/software/products/ias/htdocs/coherence.html
この項では、次の項目について説明します。
表3-1は、Coherence for C++がサポートされているプラットフォームおよびオペレーティング・システムのリストです。
表3-1 Coherence for C++がサポートされているプラットフォームとオペレーティング・システム
| オペレーティング・システム | コンパイラ | アーキテクチャ | 
|---|---|---|
Microsoft Windows Server: 2012R2+ クライアント: Windows 7以降  | 
Visual Studio 2010、2012、2013および2015  | 
x86、x64  | 
Sun Solaris 10以降  | 
SPARC、x86、x64  | 
|
Linux  | 
GCC 4.4.7以降、GNU libc 2.2.5以降、GNU libc++ 3.4.11以降  | 
x86、x64  | 
Apple OS X 10.10以降脚注 3  | 
Xcode 6 (GCC)  | 
x64  | 
脚注 1
具体的には、Sun C++ 5.9 SPARCパッチ124863-14以降がサポートされています。
脚注 2
具体的には、Sun C++ 5.9 x86/x64パッチ124864-14以降がサポートされています。
脚注 3
C++アプリケーションをApple OS Xでビルドする場合、コマンド"g++" ("CC"ではなく)を使用してコンパイルする必要があります。
Microsoft Windowsにデプロイする場合は、他のVisual Studioベースのアプリケーションと同様に、対応するVisual Studioランタイム・ライブラリをデプロイメント・コンピュータにインストールする必要があります。
Visual Studio 2015: x86またはx64向けの再配布可能なランタイム・ライブラリ。
http://www.microsoft.com/en-eg/download/details.aspx?id=48145
Visual Studio 2013: x86またはx64向けの再配布可能なランタイム・ライブラリ。
http://www.microsoft.com/en-us/download/details.aspx?id=40784
Visual Studio 2012: x86またはx64向けの再配布可能なランタイム・ライブラリ。
http://www.microsoft.com/en-us/download/details.aspx?id=30679
Visual Studio 2010: x86またはx64向けの再配布可能なランタイム・ライブラリ。
x86:
http://www.microsoft.com/en-us/download/details.aspx?id=5555
x64:
http://www.microsoft.com/en-us/download/details.aspx?id=14632
Coherence for C++はZIPファイルとして配布されます。ZIPユーティリティまたはunzipコマンド行ユーティリティを使用して、ターゲット・コンピュータの任意の場所にZIPファイルを解凍します。抽出されたファイルは、coherence-cppという単一のディレクトリ内にまとめられています。
次の例では、unzipユーティリティを使用して、/optディレクトリ(UNIXベースのオペレーティング・システムで推奨されるインストール・ディレクトリ)にディストリビューションを抽出します。unzipユーティリティが使用できない場合は、ターゲットのオペレーティング・システムで提供されているZIPユーティリティを使用します。
unzip /path_to_zip/coherence-cpp-version_number-platform-architecture-compiler.zip -d /opt
次の例では、unzipユーティリティを使用して、Windowsオペレーティング・システムのC:\ディレクトリにディストリビューションを抽出します。
unzip C:\path_to_zip\coherence-cpp-version_number-platform-architecture-compiler.zip -d C:\
インストール・ディレクトリに含まれているディレクトリの説明は、次のとおりです。
bin – このディレクトリに含まれるsanka.exeは、共有ライブラリ内に埋め込まれている実行可能クラスを起動するアプリケーション・ランチャです。
doc – このディレクトリには、Coherence for C++に関するドキュメント(APIドキュメントを含む)が含まれています。
include - このディレクトリには、Coherence APIを使用し、アプリケーションとともにコンパイルする必要があるヘッダー・ファイルが含まれています。
lib – このディレクトリにはCoherence for C++ライブラリが含まれています。coherence.dllファイルは、開発およびランタイム用のメイン・ライブラリです。これについては、このドキュメント全体で詳細に説明します。
注意:
Visual Studio 2015をサポートするには、\lib\vs2015\coherence.dllを使用します。
Solarisでは、STLport、/lib/stlport/libcoherence.soを使用します。
Oracle Coherence for .NETディストリビューションは、.NET Extendクライアントの開発および使用の際に使用します。ディストリビューションの最新バージョンは、Oracle Technology NetworkのCoherence製品に関するページからダウンロードできます。
http://www.oracle.com/technology/software/products/ias/htdocs/coherence.html
この項では、次の項目について説明します。
Coherence for .NETを使用するには、次のものが必要です。
Microsoft .NET 4.0以上のランタイムとSDK:
サポートされているMicrosoft Windowsオペレーティング・システム(前述の該当する.NETランタイムのシステム要件を参照)
MSHelp 2.xランタイム。これは、Visual Studio 200x、および次のリストにあるMicrosoft製品に含まれています。
Coherence for Javaディストリビューションの一部として提供されているexample.zipファイル内の例を構築および実行するには、Microsoft Visual Studio 2010以上が必要です。
Coherence for .NETは、インストーラを含むZIPファイルとして配布されています。ZIPユーティリティまたはunzipコマンド行ユーティリティを使用して、ターゲット・コンピュータの任意の場所にインストーラを抽出します。次の例では、unzipユーティリティを使用して、C:\ディレクトリにインストーラを抽出します。
unzip C:\path_to_zip\coherence-net-version_number.zip -d C:\
インストーラを実行する手順は、次のとおりです。
coherence-net-version.msiファイルをダブルクリックします。注意:
インストーラの実行中に、インストールをロールバックすると表示された場合は、実行モードのレベルを上げてインストーラを実行します。たとえば、管理者の権限でコマンド・プロンプトからMSIファイルを実行すれば、インストール・プロセスを完了できます。Windows 7の場合は、コマンド・プロンプトを右クリックして「管理者として実行」を選択します。
インストール・ディレクトリに含まれているディレクトリの説明は、次のとおりです。
bin – このディレクトリにはCoherence for .NETライブラリが含まれています。Coherence.dllファイルは、開発およびランタイム用のメイン・ライブラリです。これについては、このドキュメント全体で詳細に説明します。
config – このディレクトリには、Coherenceクライアント構成ファイル用のXMLスキーマと、Coherenceで定義したユーザー定義型に対するPOF構成ファイルが含まれています。
doc – このディレクトリには、Coherence for .NETに関するAPIドキュメントが含まれています。APIドキュメントは、HTMLヘルプ(Coherence.chm)、MSHelp 2.0およびMS Help Viewerです。
Coherenceアセンブリは、カスタム・バージョン番号マッピングを使用します。Oracleバージョン番号は5桁 (N.N.N.N.N)を使用しますが、.NETバージョン番号は4桁(N.N.N.N)までしか使用できません。.NETのバージョン規則をサポートするために、.NETのバージョンの4桁目にOracleの4桁目および5桁目を組み合せます。
.NETのバージョンの4桁目の作成には次の計算が使用されます:
.NET4桁目= Oracle4桁目 * 1000 + Oracle5桁目
.NETのバージョンの4桁目をOracleのバージョンの5桁目に変換するには次の計算が使用されます:
Oracle4桁目= int(.NET4桁目 / 1000)
Oracle5桁目= .NET4桁目 - (Oracle4桁目 * 1000)
次に例を示します。
| .NETバージョン番号 | Oracleバージョン番号 | 
|---|---|
12.2.1.0  | 
12.2.1.0.0  | 
12.2.1.1  | 
12.2.1.0.1  | 
12.2.1.1000  | 
12.2.1.1.0  | 
12.2.1.1001  | 
12.2.1.1.1  | 
12.2.1.2010  | 
12.2.1.2.10  | 
12.2.1.10010  | 
12.2.1.10.10  | 
注意:
ロギングでは.NETの4桁目がOracleの4桁目および5桁目に変換されるため、JavaおよびC++のログ・メッセージと同じようにロギング・メッセージが表示されます。
ExtendプロトコルとPOFの互換性はメジャー・リリースの2桁目が同じ場合(12.1、12.2など)は維持されますが、メジャー・リリースの1桁目が同じ場合(12.x、13.xなど)は維持されない可能性があります。
注意:
POFでは、後方互換のシリアライズ変更がサポート可能なため、POFを使用する場合は互換性が要求されます。
12.1.2.0.1より前のリリースでは、Extendクライアントはクラスタ・プロキシとの前方互換性のみをサポートしています。つまり、Extendクライアントは、メジャー・リリースの2桁目が同じまたはそれ以降であるクラスタ・プロキシと接続可能です。
リリース12.1.2.0.1以降では、Extendクライアントはクラスタ・プロキシとの前方互換性および後方互換性を両方ともサポートしています。つまり、Extendクライアントは、より小さいバージョン番号またはより大きいバージョン番号のクラスタ・プロキシと接続可能です。たとえば、12.1.2.0.2のExtendクライアントは、12.1.2.0.1のプロキシに接続できます。Extendクライアントの後方互換性は、バージョン12.1.2.0.1より前のプロキシ(12.1.2.0.0およびバージョン3.7.1以前のプロキシ)ではサポートされていません。
Coherence 12.1.2.0.0のExtendクライアントは、12.1.2.0.0以降のクラスタ・プロキシが必要です。12.1.2.0.0以外(たとえば12.1.2.0.1や12.1.2.0.2)のCoherence 12.1.2のExtendクライアントでは、12.1.2.0.1以降のクラスタ・プロキシが必要です。
クラスタ・プロキシとの下位互換性は、アップグレードの利便性を目的とし、長期的なソリューションではありません。これによって、プロキシ・サーバーおよびクラスタが新しくなる前にExtendクライアントが新しいバージョンにアップグレードされることを可能にします。ただし、ベスト・プラクティスとしては、クラスタは常に最新バージョンにアップグレードしておく必要があります。Extendクライアントと接続されたサーバーのバージョンが異なる場合、Extendクライアントの機能は2つのリリースまたはパッチ・セットの古い方のバージョンに制限されます。
Coherence 12.2.1の後方互換性の例外
Coherence 12.2.1クラスタ・プロキシは、バージョン3のExtendクライアントと後方互換性があります。つまり、バージョン3のクライアントは、12.2.1のクラスタ・プロキシと接続可能です。12.2.1の後方互換性は、Coherence*Extendのメジャー・リリース互換性ポリシーの例外の1つです。クラスタ・プロキシの12.2.1より後のバージョンには、現在の例外が含まれず、後方互換性が維持されません。