クラスタ化されたサーバー環境において、分散ステート管理はクラスタが提供しなければならないキーサービスです。例えば、ステートフルセッション Bean アプリケーションでは、どのノードがリクエストにこたえるかに関係なく、クライアントアプリケーションが同じセッションステートに届くように、セッションステートは全てのノードの全ての Bean インスタンス間で同期されなければなりません。エンティティ Bean アプリケーションにおいて、Bean オブジェクトは、クラスタ間でのデータベース負荷を減らすために、時にはキャッシュされる必要があります。現在のところ、 JBoss AS のステート複製や分散キャッシュサービスは2つの方法で提供されています: HASessionState MBean と JBoss Cache フレームワークです。
HASessionState MBean は、 JBoss 3.x と 4.x の EJB 2.x ステートフルセッション Bean および HTTP ロードバランサーのためにセッション複製と分散キャッシュサービスを提供します。 MBean は all/deploy/cluster-service.xml ファイルで定義されています。その設定のオプションについては、後で EJB 2.x ステートフルセッション Bean のセクションでご覧頂きます。
JBoss Cache は、全てのアプリケーションサーバーの環境とスタンドアロンで使用できる十分な機能を有する分散キャッシュフレームワークです。それは、 HASessionState サービスを徐々にリプレースします。 JBoss AS は、 Hibernate 永続オブジェクトと同様に HTTP セッション、 EJB 3.0 セッションおよび、エンティティ Beans にキャッシュサービスを提供するために JBoss キャッシュを統合します。それぞれのキャッシュサービスは個々の MBean で定義されています。これらの MBean については、次のいくつかのセクションで具体的なサービスに関して説明するときに触れます。