管理及程式設計指南
「現場連線」管理資料庫和 Java 應用程式連線,以改進 Net.Data 在 Windows NT、OS/2、
AIX 及 Sun Solaris 作業系統上的執行效能。經由使用「連線管理程式」和 cliette (亦即維護開放連線的處理),
「現場連線」可消除連接到資料庫或啟動「Java 虛擬機器」的額外啟動時間。
「現場連線」使用架構檔 dtwcm.cnf,來決定需啟動哪些 cliette。
它包含了「現場連線」所用之每一個 cliette 的管理資訊和定義。
有關「現場連線」的詳細資訊,請參閱管理連線。
圖 6 顯示的範例架構檔,包含下列類型的資訊:
- 「連線管理程式」埠資訊
- DB2 連線的 SQL cliette 資訊
- Java 應用程式 cliette 資訊
圖 6. 「現場連線」架構檔
1 CONNECTION_MANAGER{
2 MAIN_PORT=7100
3 }
4
5 CLIETTE DTW_SQL:CELDIAL{
6 MIN_PROCESS=1
7 MAX_PROCESS=5
8 EXEC_NAME=./dtwcdb2
9 DATABASE=CELDIAL
10 LOGIN=marshall
11 PASSWORD=stlpwd
12 }
13
14 CLIETTE DTW_JAVAPPS{
15 MIN_PROCESS=1
16 MAX_PROCESS=5
17 EXEC_NAME=./javaapp
18 }
|
- 1 至 3 行是架構檔所必備的,定義「現場連線」所用的唯一埠號。
- 5 至 12 行定義所有資料庫 cliette,定義 cliette 名稱、
要執行的處理數目、資料庫名稱,以及 cliette 執行檔。
您可以加入其它資訊,例如,如果連接 DB2 資料庫,則可加入使用者 ID 和通行碼。
- 14 至 18 行定義 Java 應用程式的所有 cliette,識別 cliette 名稱、
要執行的程序數目、唯一的埠號,以及 cliette 執行檔。
|
|
開始之前:在自行設定「現場連線」架構檔之前,
請閱讀這些步驟後面的提示和秘訣區段。
架構「現場連線」埠︰
您所選擇的 MAIN_PORT 值即為優先使用的埠號。
現場連線可用的埠號可以透過 MAIN_PORT 的設定和每一個 cliette 的 MAX_PROCESSES 來計算。
載入時,現場連線以 MAIN_PORT 指定的數字開始配置埠,
逐漸遞增,直到達到累加 MIN_PROCESSES 為止。
如有需要,則載入埠,直到達到 MAX_PROCESSES 為止。
使用的最大埠數是 MAX_PROCESSES 設定值的總計。
例如,在圖 6 的架構中,配置的埠號為
7100、7101 及 7102,最多可配置到 7110。
重要事項︰
- 請向您的系統管理者查詢,以確保您要使用的埠號為可用埠號。
- 在 Net.Data 起始設定檔中,確定 MAIN_PORT 的值符合 DTW_CM_PORT 的值。
架構資料庫 cliettes︰
- 鍵入 cliette 環境陳述式。
CLIETTE type:db_name
參數:
- type
- 連結語言環境和 cliette 所用的名稱。關於有效類型的列示,
請參閱***。
- db_name
- 資料庫 cliette 名稱通常與 cliette 相關的資料庫同名,例如 MYDBASE,但也可以是其它名稱。當使用 Oracle 語言環境時,
db_name 是可選用的。
- 決定 MIN _PROCESS 和 MAX_PROCESS 的值。 MIN_PROCESS 設定「連線管理程式」啟動時,
所要啟動的處理數。
之後,當同時存在的額外要求抵達時,
「連線管理程式」會啟動更多的 cliette (若有需要的話),
直至到達 MAX_PROCESS 所指的上限值為止。
鍵入 MIN_PROCESS 和 MAX_PROCESS 陳述式:
MIN_PROCESS=min_num
MAX_PROCESS=max_num
參數:
- min_num
- 「連線管理程式」啟動時所要啟動的 cliette 數。
您必須擁有足夠的唯一埠號以支援這麼多 cliette。
- max_num
- 可同時執行的最大 cliette 數。您必須擁有足夠的唯一埠號以支援這麼多 cliette。
- 設定 cliette 可執行檔的名稱。這個檔名將設定為:
EXEC_NAME=./dtwcdbtypeid
其中,dbtypeid 是資料庫類型識別字。
請參閱表 6,以取得有效的可執行檔名稱:
表 6. cliette 可執行檔名稱
Cliette 說明
| Cliette 類型
| 姓名
| 平台可用性
|
UNIX
| Windows NT 或 OS/2
| AIX
| NT
| OS/2
| HP
| SUN
| PTX
|
---|
DB2 處理 cliette
| DTW_SQL
| dtwcdb2
| dtwcdb2.exe
| Y
| Y
| Y
| Y
| Y
| N
|
ODBC 處理 cliette
| DTW_ODBC
| dtwcodbc
| dtwcodbc.exe
| Y
| Y
| N
| N
| N
| N
|
Oracle 處理 cliette
| DTW_ORA
| dtwcora
| dtwcora.exe
| Y
| Y
| N
| N
| N
| N
|
- 設定 cliette 所連結的資料庫名稱:
DATABASE=db_name
其中 db_name 是 cliette 所連結的資料庫名稱,例如 MYDBASE。
- 可選用的︰將 LOGIN 和 PASSWORD 變數的預設值變更為
*USE_DEFAULT,讓 Net.Data 使用相同的使用者 ID 來啟動「連線管理程式」,
連接到 DB2 資料庫。
設定這些預設值之後,可讓您避免將此資訊放進架構檔中。 例如,
在圖 6 的範例架構檔中,將 14 和 15 行換成下列這兩行:
LOGIN=*USE_DEFAULT
PASSWORD=*USE_DEFAULT
要訣:若您在架構檔中定義多重 cliette 登錄,
則可以針對特定資料庫設定不同的資料庫登入和通行碼。
架構 Java 應用程式 cliettes︰
- 鍵入 cliette 環境陳述式:
CLIETTE DTW_JAVAPPS
- 決定 MIN _PROCESS 和 MAX_PROCESS 的值。MIN_PROCESS 設定「連線管理程式」啟動時,
所要啟動的處理數。之後,如有幾個要求同時抵達,「連線管理程式」會啟動更多 cliette,
視需要而增加,直到達到 MAX_PROCESS 的指定值為止。
鍵入 MIN_PROCESS 和 MAX_PROCESS 陳述式。
MIN_PROCESS=min_num
MAX_PROCESS=max_num
參數:
- min_num
- 「連線管理程式」啟動時所要啟動的 cliette 數。 您必須擁有足夠的唯一埠號以支援這麼多 cliette。
- max_num
- 可同時執行的最大額外 cliette 數。
您必須擁有足夠的唯一埠號以支援這麼多 cliette。
架構「現場連線」的提示和秘訣:
- 「連線管理程式」所用的 Cliette 名稱,必須是能夠唯一地認出一組 cliette。
- 如果是資料庫 cliette,
則對於您要存取之每一個資料庫來說,都必須有一組已指名的 cliette。
對於不常存取的資料庫,您可將 cliette 的 MIN 和 MAX 數設定為 1。
另外,您也可將 MIN 設為 0,表示直到 Net.Data 提出 cliette 要求時,才啟動處理。
- cliette 的 NAME 和起始設定檔中 ENVIRONMENT 陳述式的
cliette 類型所參考到的 cliette 名稱必須保持一致。
cliette 名稱可包含變數,如果是資料庫 cliette,
則應該包含變數參照 $(DATABASE)。
在 ENVIRONMENT 陳述式中,cliette 名稱的預設值是 DTW_SQL:$(DATABASE)。
您可以在起始設定檔中使用變數參照,但不能在「現場連線」架構檔中使用。
DATABASE 變數定義在 Net.Data 巨集中。當巨集中發現 SQL 陳述式時,
Net.Data 起始設定檔中的 $(DATABASE) 變數參照會換成 DATABASE 的現行值。
您可以使用這個方法來存取多重資料庫。
如果您的 Net.Data 巨集中想要存取三個資料庫
(例如,D1、D2 及 D3),且您的起始設定檔含有標準的
CLIETTE "DTW_SQL:$(DATABASE)" 這一行,則在現場連線架構檔中需要有如下三個區段:
CLIETTE DTW_SQL:D1{ ...}
CLIETTE DTW_SQL:D2{....}
CLIETTE DTW_SQL:D3{....}
- 處理已啟動,但無法停止。
如果您將最大處理數設定為 M,不管任何時候都會同時進行 M 個處理,
它們會維持在作用中狀態,直到您將「連線管理程式」關閉為止。
所以您大概不會想將 MAX_PROCESS 的值設得太高,
以免將系統資源全用來啟動一些較少使用之處理。
建議值: 嘗試不同的 MIN_PROCESS 和 MAX_PROCESS 值,
看看何值最適用於您的系統。若「連線管理程式」收到的要求,比所設定的最大值還多,
則會將最後的要求放在等待佇列中,直到 cliette 完成處理為止。
當 cliette 可用時,就會處理等待佇列中的要求。將要求放入等待佇列中的這種處理,應用程式的使用者會容易明瞭。
- 您可以在不同名稱的區段中,使用相同類型的 cliette。
例如,架構檔中所有的 DB2 資料庫區段,全都使用了相同的 cliette 類型。
您不可以讓兩個區段的名稱相同。
若您使用 CGI,而您僅想讓部份的資料庫使用「現場連線」,
則您僅需在架構檔中列出您要的資料庫。當 Net.Data 在處理
Net.Data 巨集時,如果發現 SQL 函數,則會向「連線管理程式」要求特定的 cliette。
若「連線管理程式」式沒有該類型的 cliette,其會以 NO_CLIETTE_AVAIL 訊息回應之。
此時,Net.Data 會改用 DLL 版本來處理該要求。
架構「連線管理程式」服務程式成為自動啟動︰
在 Windows NT 上,您可以設定令「連線管理程式」啟動為 Windows NT 服務,
而不需透過指令行。將「連線管理程式」當成 Windows NT 服務來執行,
可在每次啟動機器時自動啟動「連線管理程式」。
重要事項︰在設定「連線管理程式」為自動啟動之前,
請先從指令行啟動它,以確保「現場連線」架構檔是正確的。
- 從 Windows NT 工作列上,選取啟動->設定->控制台->服務程式。
- 選取 Net.Data 連線管理程式,
然後按一下啟動按鈕。
- 選取自動啟動類型,再按一下確定。
[ 頁面頂端 | 前一頁 | 下一頁 | 目錄 | 索引 ]