C言語を使用したOracle Tuxedo ATMIアプリケーションのプログラミング

     前  次    新規ウィンドウで目次を開く    PDFとして表示 - 新規ウィンドウ  Adobe Readerを取得 - 新規ウィンドウ
コンテンツはここから始まります

プログラミング環境

ここでは、以下の内容について説明します。

 


UBBCONFIG構成ファイルの更新

アプリケーション管理者は、最初にUBBCONFIG構成ファイルにアプリケーションの構成を定義します。プログラミング環境をカスタマイズするには、構成ファイルを作成するか更新します。

構成ファイルの作成または更新を行う場合は、次のガイドラインを参考にしてください。

表3-1は、プログラミング環境に影響するUBBCONFIG構成ファイル・パラメータを示しています。パラメータは機能別に分類されています。

表3-1 プログラミング関連のUBBCONFIGパラメータ(機能別)
機能
パラメータ
セクション
説明
グローバル・リソースの制限
MAXSERVERS
RESOURCES
構成内のサーバーの最大数。この値を設定する場合は、すべてのサーバーのMAX値を考慮する必要があります。
MAXSERVICES
RESOURCES
構成内のサービスの最大総数。
データ依存型ルーティング
BUFTYPE
ROUTING
指定されたルーティング・エントリが有効であるデータ・バッファのタイプとサブタイプのリスト。
リンク・レベルの暗号
MINENCRYPTBITS
NETWORK
プロセスで使用できる暗号化の最低レベル。
MAXENCRYPTBITS
NETWORK
プロセスで使用できる暗号化の最高レベル。
ロード・バランシング
LDBAL
RESOURCES
ロード・バランシングを有効にするかどうかを示すフラグ。ロード・バランシングが有効になっている場合、Oracle Tuxedoシステムはリクエストの負荷をネットワークで分散します。
NETLOAD
MACHINES
呼出し側クライアントからの要求をリモートに送る場合に、サービスのロード・ファクタに追加される数値。リモート・サーバー上でローカル・サーバーを選択する際の基準になります。ロード・バランシングが有効になっていること(LDBALYが設定されていること)が必要です。
LOAD
SERVICES
サービス・インスタンスに関連付けられた相対的なロード・ファクタ。デフォルト値は50です。
セキュリティ
AUTHSVC
RESOURCES
システムに参加しているクライアントごとに、システムが呼び出すアプリケーション認証サービスの名前を指定します。
SECURITY
RESOURCES
実行するアプリケーション・セキュリティの種類。
会話型通信
MAXCONV
RESOURCES
特定のマシン上で同時に関与できる会話の最大数。0 - 32,767の値を指定します。SERVERSセクションに会話型サーバーが定義されている場合、デフォルト値は64になります。それ以外の場合、デフォルト値は1になります。このパラメータに指定された値は、MACHINESセクションのマシンごとにオーバーライドできます。
CONV
SERVERS
会話型通信がサポートされているかどうかを示す値。このパラメータがNに設定されているか、値が指定されてない場合、サービスに対するtpconnect()の呼出しは失敗します。
MIN/MAX
SERVERS
tmboot(1)によって起動するサーバーのオカレンスの最小数と最大数。指定がない場合には、MINMAXは1とMINがそれぞれデフォルト値となります。リクエスト/レスポンス型サーバーでも同じパラメータを利用できます。ただし、会話型サーバーは、必要に応じて自動的に追加されます。そのため、MIN=1MAX=10と設定されている場合、tmbootによって最初に1つのサーバーが起動します。そのサーバーが提供するサービスに対してtpconnect()が呼び出されると、システムによって2番目のサーバーが起動します。各コピーが呼び出されるたびに、新しいものが上限の10まで開始されます。
トランザクション管理
AUTOTRAN
SERVICES
サービス・ルーチンでトランザクション・モードを開始するかどうかを示す値。このパラメータにYが設定されている場合、別のプロセスからリクエスト・メッセージを受信すると、サービス・サブルーチンでトランザクションが自動的に開始します。
MAXTRANTIME
RESOURCES
このOracle Tuxedoアプリケーションで開始され、または受け取られたトランザクションの最大許容タイムアウトを秒単位で指定します。
マルチスレッド・サーバー
MAXDISPATCHTHREADS
SERVERS
各サーバー・プロセスによってスレッドが追加された場合、同時にディスパッチされるスレッドの最大数。
MINDISPATCHTHREADS
SERVERS
最初のサーバーの起動時に開始されるサーバー・ディスパッチ・スレッドの数。

構成ファイルは、オペレーティング・システムのテキスト・ファイルです。このファイルを実際にシステムで使用する場合は、tmloadcf(1)を実行して、バイナリ・ファイルに変換する必要があります。

関連項目

 


環境変数の設定

アプリケーション管理者は、最初にアプリケーションの実行環境を定義する変数を設定します。これらの環境変数を設定するには、UBBCONFIGファイルのMACHINESセクションでENVFILEパラメータに値を指定します。詳細は、『Oracle Tuxedoアプリケーションの設定』を参照してください。

アプリケーションのクライアント・ルーチンとサーバー・ルーチンに対して、既存の環境変数を更新したり、新しい変数を作成することができます。表3-2は、よく使用される環境変数を示しています。変数は機能別に分類されています。

表3-2 プログラミング関連の環境変数(機能別)
機能
環境変数
定義内容
使用元
グローバル
TUXDIR
Oracle Tuxedoシステムのバイナリ・ファイルの場所。
Oracle Tuxedoアプリケーション・プログラム
構成
TUXCONFIG
Oracle Tuxedo構成ファイルの場所。
Oracle Tuxedoアプリケーション・プログラム
コンパイル
CC
Cコンパイラを呼び出すコマンド。デフォルト値はccです。
buildclient(1)コマンド、buildserver(1)コマンド
CFLAGS
Cコンパイラに渡すリンクのフラグ。このフラグは必須ではありません。
buildclient(1)コマンド、buildserver(1)コマンド
データ圧縮
TMCMPPRFM
圧縮レベル(1 - 9)。
データ圧縮を行うOracle Tuxedoアプリケーション・プログラム
ロード・バランシング
TMNETLOAD
リモート・キューの負荷値に加算される数値。この値を指定すると、リモート・キューに実際より多くの作業負荷があるように設定できます。その結果、ロード・バランシングが有効になっていても、ローカル・リクエストがリモート・キューよりローカル・キューに送られるようになります。
ロード・バランシングを実行するOracle Tuxedoアプリケーション・プログラム
バッファ管理
FIELDTBLSまたはFIELDTBLS32
FMLおよびFML32型付きバッファのフィールド表ファイル名のカンマ区切りのリスト。FMLおよびVIEWでのみ必要です。
FML型付きバッファ、FML32型付きバッファ、FML VIEW
FLDTBLDIRまたはFLDTBLDIR32
FMLおよびFML32のフィールド表ファイルが検索されるディレクトリのコロン区切りのリスト。Windows 2003では、セミコロンで区切られます。
FML型付きバッファ、FML32型付きバッファ、FML VIEW
VIEWFILESまたはVIEWFILES32
VIEWおよびVIEW32型付きバッファで使用できるファイル名のカンマ区切りのリスト。
VIEW型付きバッファ、VIEW32型付きバッファ
VIEWDIRまたはVIEWDIR32
VIEWおよびVIEW32ファイルが検索されるディレクトリのコロン区切りのリスト。Windows 2003では、セミコロンで区切られます。
VIEW型付きバッファ、VIEW32型付きバッファ
コード・セット・エンコード変換
TPMBENC
MBSTRING型付きバッファ、またはFML32型付きバッファ内のFLD_MBSTRINGフィールドに含めるコード・セット・エンコード名。
MBSTRING型付きバッファ、FML32型付きバッファ
TPMBACONV
受信側プロセスでの受信時に、MBSTRINGデータまたはFML32型付きバッファ内のFLD_MBSTRINGフィールド・データのエンコードを変換するかどうかを指定する、非NULL値またはNULL値。
MBSTRING型付きバッファ、FML32型付きバッファ
外部DTD、スキーマ、およびエンティティ・ファイルのキャッシュ
URLENTITYCACHING
外部参照ファイル(DTD、スキーマ、エンティティ参照)のキャッシュの有効/無効を切り替えるフラグ。
XMLファイルを解析するOracle Tuxedoアプリケーション・プログラム
URLENTITYCACHEDIR
キャッシュするファイルを格納するディレクトリの絶対パス。URLENTITYCACHINGフラグが有効になっており、パスが指定されない場合、キャッシュされるファイルの格納先は(適切なパーミッションが設定されている)現在の作業ディレクトリになります。
XMLファイルを解析するOracle Tuxedoアプリケーション・プログラム
XMLとFML/FML32間の自動変換
TPXARSFILE
XercesDOMParserクラス属性と設定のペアを含むファイルへの絶対パス。
XMLデータとFML/FML32データ間を自動的に解析するOracle Tuxedoアプリケーション・プログラム

UNIX環境では、環境変数PATH$TUXDIR/binを追加して、アプリケーションがOracle Tuxedoシステムのコマンドに対する実行可能ファイルを見つけられるようにします。環境設定の詳細は、『Oracle Tuxedoアプリケーションの設定』を参照してください。

関連項目

 


必要なヘッダー・ファイルのインクルード

表3-3は、Oracle Tuxedoシステムと正しくインタフェースをとるために、#include文を使用して、アプリケーション・プログラム内で指定する必要があるヘッダー・ファイルを示しています。

表3-3 必要なヘッダー・ファイル
プログラム
ヘッダー・ファイル
すべてのOracle Tuxedoアプリケーション・プログラム
Oracle Tuxedoシステムで提供されるatmi.hヘッダー・ファイル
FML型付きバッファが使用されるアプリケーション・プログラム
  • 対応するフィールド表ファイルから生成されるヘッダー・ファイル
  • Oracle Tuxedoシステムで提供されるfml.hヘッダー・ファイル
VIEW型付きバッファが使用されるアプリケーション・プログラム
対応するVIEW記述ファイルから生成されるヘッダー・ファイル

 


アプリケーションの起動と停止

アプリケーションを起動するには、tmboot(1)コマンドを実行します。このコマンドは、アプリケーションに必要なIPCリソースを確保し、管理プロセスとアプリケーション・サーバーを起動します。

アプリケーションを停止するには、tmshutdown(1)コマンドを実行します。このコマンドは、サーバーを停止させ、アプリケーションで使用されていたIPC資源を解放します。ただし、データベースなどのリソース・マネージャで使用されていた資源は解放されません。

関連項目


  先頭に戻る       前  次