キャッシュサーバの動作†[edit]

キャッシュPUTサーバの起動†[edit]

 キャッシュサーバ(sl_cache)は,起動すると最初にキャッシュPUTサーバと呼ばれるプロセスを1個だけforkします.

 キャッシュPUTサーバはキャッシュデータのDBへの保存を専門的に行うサーバです.キャッシュデータをキャッシュPUTサーバに集約して保存を行うのは2つの理由があります.

  1. データ保存時のファイルロックの問題を避けるため(書き込むプロセスが1個だけならファイルロックの問題は生じない).
  2. キャッシュPUTサーバへ接続できるのは localhost のみとし,これによりある程度のセキュリティを確保する.

UDP中継プロセスとのネゴシエーション†[edit]

 リレーサーバ(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中継プロセスからのリクエストを待ちます.

リクエストへの応答†[edit]

 


トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 ページ一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2025-04-15 (火) 14:42:15