ほとんどのエージェント通信は、JMS を使用して実行されますが、一部のエージェント・アクティビティー (ログの登録、テスト結果の送信、あるいは CodeStation へのファイルの送付など) は必要に応じて HTTP および HTTPS を使用して Web 層にアクセスします。
JMS チャネルは、IBM® UrbanCode Deploy 用の 1 次制御チャネルです。すなわち、サーバーがエージェント・コマンドの送信に使用するチャネルです。 デフォルトでは、サーバーは 3 つのポート、JMS 用のポート 7918、HTTP 用の 8080、HTTPS 用の 8443 で listen します。
エージェント・モニター・サービスは、すべてのサーバー通信用とワーカー・プロセスへのコマンド (「run step」など) の送信用に JMS を使用します。 ワーカー・プロセスでは、システム通信用には JMS を使用し、プラグイン・ステップを実行したりサーバーから情報を取得したりするときには HTTP REST サービスを使用します。
サーバーとエージェント間のステートレスな通信は、パフォーマンス、セキュリティー、可用性、および災害復旧に大きな利点をもたらします。 各エージェントの要求は自己完結型であるため、トランザクションは、生成時に補助ストレージに同期することのできる個別のメッセージで構成されます。 サーバーまたはエージェントのいずれかのエンドポイントを停止させて、(損失時間以外の) 影響なしに再始動することができます。 通信がトランザクション中に失敗しても、メッセージの損失はありません。 通信が再接続されたら、サーバーとエージェントは処理されていたメッセージや、正常に完了した作業を自動的に判別します。 障害の後、システムは、エンドポイントを同期化し、影響を受けたプロセスを復旧します。 障害の間にエージェントが実行した作業の結果は、サーバーに通信されます。