6

私はC++で分散アプリケーションフレームワークを書いています。要件の1つは、分散共有メモリの提供です。自分でゼロから書く(そして潜在的に車輪の再発明をする)のではなく、既存のオープンソースライブラリがあるかどうかを確認すると思いました。グーグルですばやく検索しても、何も役に立ちませんでした。

ここにいる誰かが、彼らが推奨できる優れたC ++ DSMライブラリの経験を持っていますか?

ライブラリはMRMW(複数のリーダー/複数のライター)をサポートするのが理想的ですが、必要に応じてMRSW(複数のリーダー、単一のライター)で対応できます。私はLinuxで開発しています。

4

3 に答える 3

6

エース共有メモリは、1つのプラットフォームで共有するためのものです。

分散共有メモリは、解決すべきトランザクション性に関する問題があるため、非常に重要です。分散共有メモリを効果的に使用するには(コピーの場合でも)、障害が発生した場合に復元力を必要とする分散同期アルゴリズムとプロトコルが(とりわけ)必要であることがわかります。(Shshooot!それはいつもの方法ではありません!)

これらの問題について重要な研究論文が書かれています(Taubenfieldの本の参考文献の章のいくつかを参照してください)

これは、「自分でローリングする」こと自体が重要なプロジェクトになるという警告です。

于 2009-09-21T11:56:58.363 に答える
4

memcachedを検討しましたか?

これはネットワーク分散型であり、非常に高速です。

多くの言語に対応するバインディングがあり、さまざまなOSからアクセスでき、複数のライター、複数のリーダーをサポートします。

于 2009-09-21T10:41:19.687 に答える
0

ACEライブラリを試してみてください。好きなものがたくさんあります。そこにはShared_memoryクラスがありますが、DSMかどうかはわかりません。そうでない場合は、他にも興味深いネットワーク/分散のものがたくさんあります。

于 2009-09-21T10:54:12.327 に答える