DiarkisでサーバーレスRPCを実装する

 
DiarkisのC#クライアントは、RPCクラスを提供しており、これを用いることでサーバ側のロジックを書かずに、クライアント間のRPCを実装することができます。

RPCとは?

RPC(Remote Procedure Call)とは、遠隔地にあるコンピュータが、あたかも通常の手続きのように計算処理を呼び出して実行することができる技術のこと。一般的には、クライアントからサーバーへのアプリケーションに用いられます。

サーバーレスなRPCが求められる理由

サーバー機能に使えるリソースが限られていたり、サーバーサイドエンジニアがいない場合、クライアント側のみで機能を開発する必要があるわけですが、DiarkisのRPCクラスを使用することで、サーバー側のロジックを一切書くことなく、RPCを必要とする機能を実装できます。

実装例

DiarkisのRPCクラスは、Room モジュールをRPCの通信ブローカーとして使用します。

RPCクラスのセットアップ

RCP クラスは Room クラスのインスタンスを引数として代入して使います。
Room クラスについてはこちらをご参照ください。

RPCメソッドの登録

特定のRPCロジックを実行するためには、RPCロジックを実装するメソッドを登録する必要があります。

RPCの呼び出し方

以下の例では、すべてのクライアントに対してRPCを呼び出します。
以下の例では、選択したクライアントに対してRPCを呼び出します。
注: ブール値 called はRPCが呼び出されたことを示すものですが、これはリモートクライアントで実行されたことを意味するものではありません。