エンタープライズ・ライセンシーの開発者向けのサーバーサイド・ドキュメントです。
このドキュメントは、サーバーアプリケーションを構築するために、DiarkisサーバーAPIとそのモジュールインターフェイスをどのように使用するかを説明することを目的としています。
このドキュメントの範囲は、HTTP、TCP、UDPサーバーの設定方法、それらのサーバー構成、Roomモジュール、Match Makingモジュール、およびサーバー間の内部通信を含みます。
このドキュメントは、読者がGoの基本とその開発環境を理解していることを前提としています。
また、読者はDiarkisのビルドを行う資格を持っていることを前提としています。
主な使用言語
Diarkisサーバーは、主要言語としてGoを使用しています。しかし、GoのCインターフェースを使ってC/C++言語を使用する方法もあります。(Cインターフェイスに関するGoの公式ドキュメントはこちら)
Goroutines
Diarkisエンジンは、goroutinesを内部で処理・管理しています。ほとんどの場合、アプリケーション・ロジックはgoroutinesの使用を必要としません。コールバックを伴うDiarkisエンジンが提供する関数は、通常、内部でgoroutinesが使用されていることを示しますが、必ずしもそうではありません。
Diarkis サーバクラスタとアプリケーションサーバ
Diarkis サーバクラスターと通信するための接続を確立するには、HTTP APIを介して接続エンドポイントとその他の必要なデータをクラスターから取得する必要があります。
以下の図は、クライアント、Diarkisサーバクラスター、およびアプリケーションサーバ(複数可)の関係を示しています。
Diarkisクラスタは、HTTP、UDP/RUDP、TCP、WebSocketのいずれかで構成されています。
HTTP | TCP, UDP/RUDP, and WebSocket によるリアルタイム通信のエントリポイント |
TCP | TCP によるリアルタイム通信サーバ |
UDP | UDP によるリアルタイム通信サーバ |
WebSocket | WebSocket によるリアルタイム通信サーバ |