キャッシュPUTサーバの起動 
キャッシュサーバ(sl_cache)は,起動すると最初にキャッシュPUTサーバと呼ばれるプロセスを1個だけforkします.
キャッシュPUTサーバはキャッシュデータのDBへの保存を専門的に行うサーバです.キャッシュデータをキャッシュPUTサーバに集約して保存を行うのは2つの理由があります.
- データ保存時のファイルロックの問題を避けるため(書き込むプロセスが1個だけならファイルロックの問題は生じない).
- キャッシュPUTサーバへ接続できるのは localhost のみとし,これによりある程度のセキュリティを確保する.
UDP中継プロセスとのネゴシエーション 
リレーサーバ(sl_relay)が -cs, -cp または -cg オプション付で起動された場合,UDPの中継プロセス毎にキャッシュサーバ(sl_cache)にTCPによる接続を掛けてきます.UDP中継プロセスから接続を受けたキャッシュサーバはコントロール用プロセスをforkします.forkされたコントロール用プロセスはUDP中継プロセスとネゴシエーションを行い,それぞれの使用ポート番号や接続用のパスワードを交換します.
従ってキャッシュサーバのキャッシュコントロールプロセスは sl_relay のUDP中継プロセスと同じ数だけ起動されます.
sl_relay が -csまたは -cp オプション付で起動されている場合(PUTが有効の場合)は,キャッシュコントロールプロセスはキャッシュPUTサーバへの中継プロセスを forkします.このプロセスは sl_relay からキャッシュデータを受信し,キャッシュPUTサーバへそのまま転送します.
キャッシュコントロールプロセスはその後ループに入り,UDP中継プロセスからのリクエストを待ちます.
Counter: 2126,
today: 1,
yesterday: 0
最終更新: 2008-12-21 (日) 03:29:18 (JST) (5897d) by iseki