2012-01-03 3 views
2

私は、次のプロジェクトのための既存のフレームワークまたは技術コンセプトがあるかどうか疑問に思っています。Javaクラウドのクラウド

私は数十万のJavaオブジェクトを伴うシミュレーションを持っています。それぞれは一意のIDと状態を持ち、互いにメッセージオブジェクトを送信できる必要があります。私は、複数のサーバー上でバランスをとって、ホットスワップしたいと思っています。メッセージの受け渡し頻度に基づいてサーバー間でオブジェクトの配布を自動的に最適化するシステム(お互いに話すオブジェクトは、話者のグループは別のサーバに移動されます)。誰もが接続されていなくても、オブジェクトは定期的なタイムスライスを取得できる必要があるため、シミュレーションは常に実行されます。

基本的に、ダイナミックサーバーファームにダンプされた実行中のJavaオブジェクトは、ファーム上で自動的に最適化され、他のオブジェクトと同時に生成され、通信できます。

+0

私はあなたが(あなたがいずれかを持っている場合)カスタム要件(または)既存のロードバランサ用のプラグインとロードバランサを書き換える必要があるかもしれませんね。私が見るもう1つの可能性は、優先順位の設定を含むスレッド実行プールです。 – kosa

+0

http://terracotta.org/products/bigmemory – clyfe

答えて

0

物事は、物事の通信側を処理することができます。

グループ化「を相互話者は」ので、わからない - それは可能性が高い俳優のフレームワークや言語間で進行中の研究の分野です。このようなことについて議論している論文はたくさんありますが、実装が利用できると確信していますが、その堅牢性(またはその場所については話すことができません)。

+0

Akkaは、私が心から感謝していたようなものです。 – JeramieH

0

GoogleのBig Tableは、自分自身の弾性的な透過的な管理を行います。マシンを追加したり削除したりすることができます。マシンは自動的に展開されます。

オブジェクトが(実際の生活の中で)ないので、クラスタリングが容易ではないだろうが、同じオブジェクトにだけ話しています。あなたの質問に答えるために

を(Facebookはクラスタリングユーザーを試してみましたが、彼らはそれを行うためにそれは可能だないと結論している)、私はどのようなフレームワークがあるとは思いません。 AkkaKillimなどの

0

私はあなたがストームを見てみるべきだと思います。

分散RPC:Distributed RPCはおそらく最も予期せず、 Stormの最も魅力的な使用例です。 は、あらかじめ計算するのが難しく、あまりにも激しいので、1台のマシンで をオンザフライで計算するという多くのクエリがあります。伝統的には、このようなクエリのコストを下げるために、 ソートの近似を行う必要があります。 Stormは、 を強烈なクエリを並列化して、 をリアルタイムで計算できるようにします。

https://github.com/nathanmarz/storm

http://tech.backtype.com/preview-of-storm-the-hadoop-of-realtime-proce