デザインに関するご意見やご提案が必要です。WebアプリケーションでのJavaおよびJSONファイルによる提案の設計
私は(変更することはできません)があります。
- Webアプリケーション(JSP /サーブレット)
- サーバー上のJSONファイル(データベース)
ユースケース:
を- インフォメーションの同時読み取り上のJSONから
は私が問題を説明させて情報の
JSONファイル基本的に持っている情報のような:
{
"modules": {
"module1": {
"sub-module1": {
"info": "some faq statememt"
},
"sub-module2": {
"info": "some faq statememt"
}
},
"module2": {
"sub-module1": {
"info": "info on module2: submodule1"
}
}
}
}
これで、すべてのユーザーがでJSPを介して情報を読み取ることができます任意のモジュールを要求し、次にサブモジュールを要求する。 プログラムは基本的に要求された情報を取得し、JSONファイルをロードし、それをモデルオブジェクトにマップし、AJAXを介して関連情報をJSPに返します。
管理者ユーザーは、新しいキー/情報 を追加するか、既存の情報を編集して既存の情報を編集できます。
制約:複数の管理者が同じキーの編集を行うことはありません。
私はアプリケーションを書いていますが、今では並行性が上がっています。 この時点で、FileInputStreamおよびFileOutputStreamを介してファイルにアクセスします。
私が質問に次のようしていると私はIOの上に多くの知識を持っていけないように私は彼らのために答えを必要とする:書き込みは、その後、意志読みスロー例外を長い時間がかかっている場合はどうなりますか
- ?これをどう扱う?
- どのように同時読み取りと同期書き込みが正常に行われることを確認しますか?おそらく、データアクセスクラスのシングルトンオブジェクトで書き込みメソッドを同期させることは可能ですが、次にどのように読み込み要求を処理するのでしょうか?
- JSONオブジェクト全体が私のプログラムのメインモデルに(Boonを使用して)マッピングされているため、デッドロックやメモリの問題が発生する可能性があります。これを回避するには?
通常、いくつのキーがありますか? –
それぞれ約15〜20個のモジュールがあり、それぞれに約3〜4個のサブモジュールがあり、各サブモジュールにはA4サイズの2ページ分の情報を含む情報が含まれています。しかし、これらの制約は固定されていないため、アプリケーションを将来的に証明しようとしています。 – xploreraj
サブモジュールにはいくつのキーがありますか? –