MigrateメソッドによるOnOfflineイベントの処理

 
Diarkisのサーバークラスターは水平分散による自動スケーリングが可能という特徴があります。 この特徴はクライアント側から見ると「接続先が増えたり減ったりする」ということになります。
接続先が増える場合、DiarkisのクライアントSDKからREST APIで返されるエンドポイントに接続すればよいだけなので、クライアントは意識する必要はありません。 しかしながら、スケールインが発生する場合は接続しているクライアントは再接続する必要があります。
Diarkisのサーバークラスターがスケールインする場合、スケールインするサーバーに接続されているクライアントに対して OnOffline イベントを発生させます。 クライアントはそのイベントを受け取った場合、再接続する必要があります。
本エントリでは、Diarkisへのサーバークラスターへ安全に再接続するための方法を説明します。

UDPクライアントの例

TCPクライアントの例

※この処理は C# Client SDK v0.1.12 で確認されたものです。

おわりに

Diarkisのサーバークラスターは水平分散による自動スケーリングが可能で、高い耐障害性と拡張性を備えていることが大きな特徴です。
クライアント側ではその特性に合わせて、安全に再接続するための機構が提供されていますので、アプリケーションを実装する側は分散対応のための考慮を最小限にしつつ、作りたいものに集中することができます。