« コンプマート大須モバイルサイト閉店 | トップページ | EBt のデータ共有について考えてみる »

2005/04/19

妄想No.001

妄想No.xxx としてこれからしばらくココログを書いていきます。基本的には現在(というかかなり昔から)練っているソフトウェア構想をその時点で小出しにしたものです。妄想なので、実現しないかも知れないし実現するかも知れない。とりあえずアイデアだけは公開しておこうかな〜というぐらいの気持ちでどんどん書いていきます。

※本当は、EBt もこんな感じで作りたかったのですが…

●基本構成
 基本的には、クライアントのプロセスとサーバーのプロセスを動かす。
 作業分担は、サーバーでデータの管理、クライアントでユーザーI/Fを行う。
 サーバーとクライアントの通信は、socket を使った通信とする。
 サーバーは連携する。連携相手のサーバーは、基本的には手入力。手入力されたサーバーは、「信頼できるサーバー」と認識する。
 信頼できるサーバーとの間では、データを共有化する(シンクロ)。ただし、無制限にシンクロして単なるミラーにするべきか、関係のある部分だけをシンクロするべきかは検討中。(強い連携を考えている)
 但し、シンクロしたデータを修正することは出来ない。(修正できるのは自分の持ち物だけ)
 一方、「信頼できないサーバー」という概念も用意する。
 「信頼できないサーバー」は、「信頼できるサーバー」の「信頼できるサーバー」。。。とする。(友達の友達&その先は信用しない)
 何階層先までサーバーを辿るか?はサーバーで任意に決められるものとする。(5ぐらいで妥当だろう)
 「信頼できないサーバー」とは、データのシンクロは行わない。その代わり、データのキャッシュ(一方的にもらうだけ)を行う。(弱い連携を考えている)
 「信用できないサーバー」であれ、「信用できるサーバー」であれ、現在接続しているサーバーに蓄積された情報は同じように閲覧できる。
 ただし、「シンクロ」したデータは、基本的には削除しない(基本的には手動。シンクロ元が削除したら削除する?)が、「キャッシュ」は、一定の期間 or サイズに達した時点で古い順番(これも未定)で削除する。

●データについて
 基本的には、テキストデータ(メモ)を溜め込むことを目的としている。(もちろん画像データに関してもやぶさかではない)。
 データはネットワーク構造を取る。リンクの方向については、双方向/単方向両方付けることが出来る。
 リンクの付け外しは自由。但し、リンクを外すときに迷子になるメモがでる。救済策は検討中。 
 データには「オリジナル」「シンクロ」「キャッシュ」の3種類がある。もっと増えるかも知れない。
 「オリジナル」は、サーバーの使用者自身が作ったデータ。サーバー上で削除しない限り残る。
 「シンクロ」は、シンクロ先のサーバーがデータを削除するまでデータを保持する。シンクロ先のサーバーからデータが削除された場合は、「削除」もしくは「キャッシュ」に変更する。
 「キャッシュ」は、信用できないサーバーから取り込んだデータ。もしくは、「シンクロ先」で削除されたデータ。基本的には「いつか削除される」データ。なお、「キャッシュ」データの中に「保存したい」データがあるケースも考えられる。その場合は、データを「オリジナル」に格上げ(COPY)することが出来る。
 オリジナルのデータは、必ず先祖に root を持つ必要がある。root は、サーバーを利用するユーザーごとに一つ持つ。(更にユーザーrootをまとめた最上位rootも存在する)

ふぅ、疲れてきたので今日はこの辺で。
ま、これじゃあ何を作ろうとしているのか判らないですね。
やりたいのは、P2Pで EBt のデータを共有しよう+α。
こうやって構想を練ってみるとまだ形になっていないのが良く判るので、また練り直さないとな。

|

« コンプマート大須モバイルサイト閉店 | トップページ | EBt のデータ共有について考えてみる »

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/50935/3760557

この記事へのトラックバック一覧です: 妄想No.001:

« コンプマート大須モバイルサイト閉店 | トップページ | EBt のデータ共有について考えてみる »