残念ながら、私はこのトピックに関する(良い)オンラインリソースや本を知りません。そして、私はJavaを知りません。ただし、まだ回答が得られていないので、個人的な経験からいくつかのヒントを紹介します。
まず、高速で信頼性の高い RPC、または少なくともメッセージキューのメカニズムが必要です。これは、クライアントサーバーとサーバーサーバーの両方の通信に使用されるものです。Java用の既成のソリューションがあるかどうかはわかりません。.NETでは、このメカニズムが非常に重要であるため、常に独自のカスタムを作成していました。最も一般的には、TCPを介した軽量のバイナリメッセージプロトコルが使用されますが、ゲームの種類によっては他のオプションの方が適している場合があります。ターンベースの戦略はXMLまたはSOAPの方が優れている場合があり、ペースの速いシューティングゲームがUDPを保証する場合があります。
メッセージングシステムの最低限の要件は、リモートアクションの順序を保証しながら、確実にリモートアクションを呼び出す機能です。本当に役立つ追加は、リクエストアクションパターンのサポートです。このパターンでは、リモートアクションが何らかの結果をイニシエーターに返す場合があります。これは必須ではありませんが、あなたの人生をずっと簡単にすることができます。
メッセージングを取得したら、サーバーのパーティション分割について考えます。ほとんどの場合、1台のサーバーマシンでは、すべてのプレイヤーのゲームをホストするには不十分です。どのタスクが互いに独立していて、異なるサーバーに委任できるかを慎重に検討する必要があります。認証とログインは、このパーティション分割の最も明白な候補です。とりわけ、統計および評価計算、データベース通信(特殊なDBキャッシュとして機能するサーバー)です。Webアプリとは対照的に、MMOゲームの問題は、それらが非常にステートフルになりがちで、各プレーヤーに大量のデータが必要になることです。また、ほとんどの操作では、このデータのすべてまたはほとんどすべてにアクセスする必要があります。
単一のサーバーを使用する場合でも、複数のプロセッサを活用する必要があります。すべてのMMOサーバーは、高度に並行なプログラムです(現在のサーバーには約30の並行スレッドがあります)。同期の問題を解決するには、さまざまなスレッドを分離する必要があります。さまざまなサーバーと同様に、サーバーには独自のデータがあり、何らかのメッセージ受け渡しインターフェースを使用して通信します。おそらく、十分に高速であれば、ネットワークで使用しているものと同じRPCでもかまいません。
次に、データベースがあります。MMOプレイヤーは通常、データベースに保存する必要のある多くのことを行い、ゲームの世界に多くの変化をもたらします。私が使用していたすべてのサーバーは、これらをすぐには保存しませんでした。代わりに、変更がメモリに蓄積され、5分ごとに大量に保存されました。これにより、書き込みが行われるときに遅延が発生する可能性がありますが、ゲームはよりスムーズに進行します。この遅延が、データベース通信用に別のマシンを使用する主な理由です。
通常、MMOゲームはデータバックエンドとしてリレーショナルデータベースを使用しますが、NoSQLデータベースの方が優れていると思います。通常、DBには文字ごとに大量のデータがあり、その文字がログインしたときにすべてのデータをロードします。複雑なクエリを実行することはほとんどありません。この操作モードはNoSQLの長所のようです。とは言っても、実際のMMOサーバーでNoSQL DBをまだ使用していないので、ここでは間違っているかもしれません。
私が警告したいもう一つのデータベース関連の事柄はこれです。特にプロダクションサイクルの初期の多くの開発者は、「ゲームデザイン」のデータをDBに保存しようとしています。私は、アイテムやNPCのパラメーター、能力、その他のようなものについて話しています。それをしないでください。これらは実際には静的データであり、サーバーの更新がない限り変更されません。このデータは常にサーバーで必要です。通常、SELECT * ...
サーバーの起動時を除いて、それに対してクエリを実行することはありません。したがって、実際にはデータベースは必要ありません。これらをDBに置くことには多くの欠点があります。まず、データベースをソース管理下に置くことはできません。
これらは、MMOサーバーアーキテクチャの3つの主要コンポーネントです。ネットワーク通信、ロジックパーティション、データベースアクセスです。これら3つを使用するすべてのロジックは、おそらく非常にゲームに依存しています。より具体的な質問をして、ゲームについて詳しく教えていただければ、アドバイスが増えるかもしれません。