0

私は現在、高いパフォーマンス、可用性、およびスケーラビリティを確保するためのシステムを開発しています。WebLogic 統合シナリオでのフェイルオーバーとクラッシュ リカバリ。

現在の CPU 使用率やネットワーク負荷などの追加情報を追加するために、WebLogic のネイティブ ハートビート メッセージをカスタマイズできるかどうかを知っている人はいますか?

目的は、その「カスタム」情報を使用する負荷分散アルゴリズムを許可して、苦労しているサーバーがより多くの要求で過負荷になるのを避けることです。

4

1 に答える 1

2

私の知る限り、これは不可能です。第 1 に、ハートビートは、サーバー インスタンスがその可用性 (およびその可用性のみ) を通知するために使用されます (クラスター内のサーバー インスタンスは、ハートビート メッセージを監視することにより、サーバー インスタンスに障害が発生した時期を判断します)。第 2 に、WebLogic のロード バランシングアルゴリズムはプラグ可能ではなく、ハートビートを (少なくとも直接は) 使用しません。

したがって、次を使用できます。

  • プロキシ プラグインを使用する場合の HTTP リクエストのラウンド ロビン負荷分散。
  • EJB および RMI オブジェクトのラウンド ロビン、重みベース (同種クラスタではない場合)、またはランダムなロード バランシング。

HTTP リクエストに (より高度な) 負荷ベースの分散戦略を使用する場合は、このアルゴリズムをサポートする別のソリューション (おそらくハードウェア ロード バランサー) を使用する必要があります。

負荷ベースの戦略は、巨大な Web サイトであっても、私が頻繁に見たものではないことに注意してください。ほとんどの場合、単純なラウンド ロビン アルゴリズムは、非常に満足のいくリクエストの分散を提供し、その結果、リソースのバランスのとれた利用を実現します。

于 2010-02-02T23:05:54.330 に答える