セッション制限到達アラート
セッション制限到達アラートは、現在のEMQXクライアント接続数がデプロイメントの階層に設定された閾値を超えたことを示します。
この状態は、デプロイメントが想定される接続容量に近づいており、新規接続や全体のパフォーマンスに影響を及ぼす可能性があることを意味します。主な原因としては、急激な接続数の増加、接続の迅速な解放がされていないこと、同一デバイスからの複数クライアントセッションの存在などが挙げられます。
クライアント接続数の急増
症状
EMQXが短時間に多数の新規接続を受け入れます。デプロイメントのモニターページで接続数が急激に増加し、ビジネスのトラフィックピークと一致します。
主な原因
一括展開後、システム再起動後、またはデバイスの電源オン時に多くのクライアントが一斉にオンラインになる、あるいはビジネスのピークが計画された接続容量を超えている場合です。
対処方法
モニター -> メトリクス -> タイムライン -> 接続数に移動し、接続数の推移を確認してください。ピーク時の接続需要を事前に見積もり、トラフィックがピークに達する前にデプロイメントのスケールアップを行ってください。

接続が迅速に解放されない場合
症状
接続数が予想より高いままで、切断済み接続数が異常に多い状態です。
主な原因
一部のクライアントが接続を閉じずに異常終了したり、長いキープアライブ設定により非アクティブな接続がシステム内に残っている場合です。これらの接続は容量を消費し続けます。
対処方法
- キープアライブ間隔を短く設定し、異常接続を早期に検知して削除できるようにします。
- 長期間トラフィックのないアイドルクライアントを定期的に切断してください。
1台のデバイスからの複数クライアントセッション
症状
接続数が予期せず増加し、クライアントセッション数がオンラインデバイス数より大幅に多い状態です。
主な原因
クライアントがClean Session = Falseを使用しつつ、SDKがランダムなClient IDを生成している場合です。頻繁な再接続により、1台のデバイスに対して数百から数千のオフラインセッションが作成され、接続リソースを消費し、間接的に接続数を増加させます。
対処方法
ランダムなClient IDとClean Session = Falseを組み合わせないでください。再接続のたびに新しいセッションが作成されてしまいます。
トラブルシューティング
EMQX Cloudコンソールにログインし、デプロイメントのモニター -> メトリクスにアクセスします。
過去30分間の最大接続数がデプロイメントの最大接続制限を超えた場合にアラートが発生します。
過去30分間の最大接続数が最大接続制限の110%に達すると、新規クライアント接続が拒否されます。デプロイメントログを開き、エラータイプをClientsに設定して、以下のようなエントリを探してください。
textpeername: xx.xxx.xxx.xx:64599, pid: <xxxxx>, tag: LICENSE, msg: connection_rejected_due_to_license_limit_reached
注意事項
EMQXは接続数統計の遅延による誤差を考慮して、10%の実施バッファを適用しています。このバッファは接続制限の実施のみに使用され、デプロイメントの接続容量を追加で付与するものではありません。
モニター -> クライアントに移動し、切断済みクライアントでフィルターをかけます。同じIPアドレスで異なるClient IDを持ち、
Clean Session = Falseを使用しているクライアントが複数いる場合、1台のデバイスが複数のセッションを作成している可能性があります。
最大接続制限の引き上げ
このセクションはデプロイメントの接続制限を引き上げた場合の挙動と影響について説明しており、本アラートの直接的なトラブルシューティング手順ではありません。
最大接続制限を引き上げるには、EMQX Cloudにチケットを提出して自動スケーリングを依頼してください。オペレーションチームが環境を準備した後、スケーリングには通常15〜25分かかります。
スケーリング中もサービスは利用可能ですが、デバイスは数秒間の短い切断後に2〜3回再接続する可能性があります。クライアントが自動再接続を実装している場合、通常はビジネスに目立った影響はありません。