非常に複雑な Java EE アプリケーション (Java バックエンド + Spring HTTP Invoker を介して通信する GRails フロントエンド) には、大量の恐ろしいレガシー コードがあります。現在、Jboss で実行されます (後で Tomcat に移行されます)。
信頼性を高め、パフォーマンスを向上させるには、クラスタ化可能にする必要があります。
問題は、アプリケーションが現在、複製する必要があるビジネス全体に不可欠な多くの深いメモリ内構造を持っていることです (別の ConcurrentHashMap 内の ConcurrentHashMap 内の HashMap 内のリスト内のドメイン オブジェクトなど)。
私が言ったように、多くのレガシー コードがあり、すべてを作り直すことはできません。
現在、私は EHCache で遊んでいますが、明らかに成功していません。キャッシュされたオブジェクトの奥深くにある変更は複製されません。
Terracotta DSO は検討すべきもののように見えますが、これは究極の解決策であり、より一般的な方法で解決することを望んでいる間は、そのような急進的な解決策を導入したくありません。