Hitachi

OpenTP1 Version 7 分散トランザクション処理機能 OpenTP1 プログラム作成の手引


2.1.14 ユーザデータの圧縮

ネットワーク上に送り出されるパケット数を削減し,ネットワークの負荷を軽減するため,RPCでやり取りするユーザデータを圧縮できます。ユーザデータを圧縮する場合は,クライアント側のOpenTP1のシステム共通定義のrpc_datacompオペランドにYを指定します。

〈この項の構成〉

(1) データ圧縮機能

データ圧縮機能を使用すると,クライアント側のOpenTP1はクライアントUAPのサービス要求を圧縮してネットワーク上に送り出します。その要求に対し,SPPから返される応答もサーバ側のOpenTP1で圧縮されてネットワーク上に送り出されます。その応答を受け取ったクライアント側のOpenTP1は,圧縮データを復元してクライアントUAPに渡します。

rpc_datacompオペランドの指定は,dc_rpc_callでサービスを要求するクライアント側で有効になります。つまり,クライアント側のOpenTP1でrpc_datacompオペランドにYを指定していれば,サーバ側のOpenTP1にrpc_datacompオペランドにYが指定されていなくても,サービス要求メッセージも応答メッセージもユーザデータを圧縮してネットワークに送り出します。反対に,クライアント側のOpenTP1にrpc_datacompオペランドにYを指定していなければ,サーバ側のOpenTP1にrpc_datacompオペランドにYが指定されていても,サービス要求メッセージ・応答メッセージともにユーザデータを圧縮しません。ただし,サーバ側のOpenTP1がユーザデータの圧縮機能をサポートしている場合に限ります。

データ圧縮機能の概要を次の図に示します。

図2‒13 データ圧縮機能の概要

[図データ]

(2) データ圧縮機能の効果

データ圧縮機能の効果は,ユーザデータの内容に依存します。ユーザデータ中に連続した同一文字が多く現れる場合は効果がありますが,同一文字が連続することのないユーザデータは圧縮の効果がありません。

クライアント側のOpenTP1でrpc_datacompオペランドにYを指定していても,ユーザデータに圧縮効果がないときは,圧縮しないでサービス要求を送信します。しかし,応答メッセージが圧縮効果のある場合は,応答のユーザデータは圧縮して返送します。なお,サービス要求を圧縮しない場合でも,応答を圧縮して返すのは,クライアント側・サーバ側ともにTP1/Server Baseのバージョンが03-06以降のときだけです。これ以外のバージョンでは,サービス要求を圧縮しない場合,応答は圧縮しないで返ります。

データ圧縮機能は,データ圧縮/復元のためのオーバヘッドがかかるため,事前にデータ圧縮による効果と性能への影響を評価してから使用してください。