3

私は最近、オブジェクト データベース エンジンdb4oに出くわしました。これは非常に興味深いと思います。中程度の信頼の下で共有ホスティング環境に展開される ASP.NET MVC アプリケーションで使用したいと考えています。信頼レベルのため、組み込み/インプロセス モードでの db4o の使用に制限されています。

それ自体は問題ありませんが、ホスティング プロバイダーは、共有ストレージを使用して複数の (負荷分散された) サーバー インスタンスで各 Web アプリケーションを透過的に実行します。ただし、書き込みアクセス権を持つ db4o サーバーのインスタンス (インプロセスまたはネットワーク化されているかどうか)は、基礎となるデータベース ファイルをロックするため、同じファイルを使用するアプリケーションの複数のインスタンスを持つことは機能しません (または、少なくとも方法がわかりません)。だろう)。

問題は、この特定の環境で db4o を使用できるかどうかです。

各アプリケーションに、レプリケーション (dRS) を使用してマスター データベースと同期する独自のデータベースを持たせることを検討しましたが、そのアプローチでは、非常に頻繁な双方向レプリケーション (各要求の開始時にマスターの変更を読み取り、変更するたびにマスターする) これはあまり効率的ではないと思います。

Web アプリケーション/環境の特徴の要約:

  • 読み取り集中型 (完全に読み取り専用ではない)
  • 変更が行われてからすべてのアプリケーション インスタンスのデータに変更が反映されるまでの遅延 (数秒) は許容されます。
  • 中程度の信頼で実行する必要があります
  • ロードバランサーが「スティッキー セッション」を使用する保証はない

すべての提案は大歓迎です!

4

0 に答える 0