[Groonga-commit] droonga/wikipedia-search.wiki at 626993b [master] Updated Droongaクラスタにノンストップでノードを追加する手順 (markdown)

アーカイブの一覧に戻る

YUKI Piro Hiroshi null+****@clear*****
Thu May 22 16:10:08 JST 2014


YUKI "Piro" Hiroshi	2014-05-22 16:10:08 +0900 (Thu, 22 May 2014)

  New Revision: 626993b1116cad0f83e2c448c973b6b96471c0c2
  https://github.com/droonga/wikipedia-search/wiki/Droonga%E3%82%AF%E3%83%A9%E3%82%B9%E3%82%BF%E3%81%AB%E3%83%8E%E3%83%B3%E3%82%B9%E3%83%88%E3%83%83%E3%83%97%E3%81%A7%E3%83%8E%E3%83%BC%E3%83%89%E3%82%92%E8%BF%BD%E5%8A%A0%E3%81%99%E3%82%8B%E6%89%8B%E9%A0%86/626993b1116cad0f83e2c448c973b6b96471c0c2

  Message:
    Updated Droongaクラスタにノンストップでノードを追加する手順 (markdown)

  Modified files:
    Droongaクラスタにノンストップでノードを追加する手順.md

  Modified: Droongaクラスタにノンストップでノードを追加する手順.md (+21 -3)
===================================================================
--- Droongaクラスタにノンストップでノードを追加する手順.md    2014-05-22 13:08:52 +0900 (d6b4f0e)
+++ Droongaクラスタにノンストップでノードを追加する手順.md    2014-05-22 16:10:08 +0900 (8700e40)
@@ -18,6 +18,22 @@
 
 ## 事前実装
 
+### 実装しなければならない機能
+
+ノンストップでもストップ有りでも必要な機能:
+
+ * graceful restart
+ * droonga-replicate コマンド
+   * droonga-requestのstdin対応
+
+ノンストップでの追加のために必要な機能:
+
+ * graceful stop
+ * last message time保持、graceful stop後に出力
+ * effective message time保持、セット
+ * バッファ機能
+
+
 ### Serfによる死活管理
 
 serfを利用したクラスタの死活監視の仕組みについて、以下の挙動になるよう変更を行っておく。
@@ -32,16 +48,18 @@ droonga-engineは以下の挙動になるよう変更を行っておく。
  * 新しいcatalog.jsonが監視対象ディレクトリ(staging-catalog)以下に配置されたら、即座にそれを検知する。
  * effectiveDateが現在時刻より前であれば、監視対象ディレクトリに置かれたstagingなcatalog.jsonの内容を、メモリ上のcatalog.jsonの内容に即座に反映する。と同時に、ファイルへの書き込み権限がある場合は、本番のcatalog.jsonにも変更を反映する。
 
+もしくは、serfのメッセージを使って「新しいcatalogはここにあるよ」と通知、ダウンロードさせる仕組み。
+
 ### 最後に受け取ったメッセージのtimestamp
 
  * droonga-engineは、最後に自分が受け取ったメッセージのtimestampを保持する。
    (last_message_timestamp)
-   * この情報はメモリ上の揮発性の情報としてのみではなく、不揮発性の情報として保持する。
+   * この情報はメモリ上の揮発性の情報として保持する。
+   * プロセス終了時に、不揮発性の情報として出力する。
  * droonga-engineは、「これ以後のtimestampのメッセージのみ有効と見なす」「これ以前のtimestampのメッセージが来ても無視する」と判断する基準となるtimestampを保持できる。
    (effective_message_timestamp:初期値=nil)
-   * この情報はメモリ上の揮発性の情報としてのみではなく、不揮発性の情報として保持する。
+   * この情報は不揮発性の情報として与えられ、読み込んだ後はメモリ上の揮発性の情報として保持する。
    * effective_message_timestampが設定されている場合、入ってきたメッセージのtimestampをチェックして、古いメッセージであれば破棄する。
-   * effective_message_timestampよりも新しいtimestampのメッセージが来たら、メッセージを受け入れると同時に、effective_message_timestampをnilに戻す。
 
 ### バッファ
 
-------------- next part --------------
HTML����������������������������...
ダウンロード 



More information about the Groonga-commit mailing list
アーカイブの一覧に戻る