Add support ticket services, REST controllers, and STOMP relay
Implements the MediaService backend for the support ticket system: - SupportTopicService: CRUD for org-scoped support topics - SupportAssignmentService: round-r...
Voip.> を NATS ストリームのサブジェクトに追加し、VoipStompRelayController で IllegalStateException を処理します
NATS ストリームはチャットのみをカバーしました。> なので、voip にサブスクライブします。> スレッド IllegalStateException ([サブ-90007]) マッチングストリームなし 追加した voip.> ストリームの被写体に覆われているので、両方の被写体がカバーされ、 起動障害を防ぐため、I...
DBメンバーによるメッセージの閲覧をスキップ
RedisからMemberIDを読み取るgetMemberIdFromRequest()を抽出する DBを打たずにセッション。 ではなく getMessages() で使う getCurrentMember() — メンバーのエンティティティティティティティティティティは、そこにヌルチェックされただけだった。 決して使...
オーバーヘッドと非同期TTLのリフレッシュをロギングする
- k8sコンフィグマップ(実際の生産コンフィグ):低セキュリティ/ヒカリ INFO/DEBUG から WARN へのロギング、HikariCP プールの設定 (最大 20) - KSessionService: ストリップ ~60 System.out.println は、火災した呼び出し 128-char セッショ...
ログノイズとトーン接続プールを削減
- TRACEからWARN、HikariCPへのスプリングセキュリティをDEBUGから下げる WARN — リクエストごとの同期ログ書き込みの数十を排除 - 明示的なHikariCPプールコンフィグ(最大20、ミニアイドル5)を追加して防止 同時負荷下での接続排気 - getCurrentMember() から 14 ...
チャットメッセージエンドポイントからメッセージロギングを一枚削除
System.out.println 呼び出しをメッセージストリームマップ内で削除 1回のメッセージ(1リクエストあたり100 I/Oの操作)と最終処理 すべてのメッセージを再びストリーミングして、ログインのためのメンバーIDを収集するログ
クエリパラメータから、クロスサブドメインWebSocket authを受け付けます
?***= クエリパラメータから ID を読みます。 クッキー。 これは、内部のフロントエンドを可能にします.kamocrm.com 認証する WebSocketは、クロスドメインクッキーなしでmedia.kamocrm.comに接続します。 インターセプターはRedisに対して直接セッションを検証します.
独自の消費者再試行によるNATSコンシューマーバインディングの処理
- createNatsMessageHandler() メソッドにメッセージハンドラーを抽出する - 「Consumerは既にバインドした」時に、独自のコンシューマー名でリトリーロジックを追加 サーバの再起動後にエラーが発生します - 動詞デバッグロギングをクリーンアップ
Add WebSocket認証を経由***クッキーハンドシェイクインターセプター
Handhakeに***クッキーを読み込むWebSocketAuthInterceptorを追加, KSessionService でセッションを解決し、memberId/orgId を格納する WebSocket セッション属性。 STOMP CONNECTでプリンシパルを設定する ダウンストリームプレゼンスと通知機...
ポートのTraefikによるルートWebSocket 443
- service.yaml:podの実際のリスニングポートに合わせてポート80→8443を修正 - ingressroute.yaml: バックエンドのスキーム https + port 8443 を使用する - servertransport.yaml: バックエンド TLS の証明書に insecureSkipV...
NATS接続用のクラスター内部DNSを使用する
デフォルトNATS URLをWireGuard IP(100.64.x.x)から変更 nats.kamo.svc.cluster.local ローカルサーバ リモートノード (k0m1、k2m1)はWireGuard IPに残ります.
メディアサービス展開でTLS証明書をオプションに
- 任意追加:ワイルドカードkamocrm-comの秘密のボリュームにtrue - cert-converter initコンテナを更新して、不足している証明書を優雅に処理
古いTailscale IPの代わりにWireGuard VPN IP(10.8.x.x)を使用するkubeconfigの更新を修正しました
K1m1とk2m1の並列展開にレファクタ
- 個別のジョブにビルドとデプロイを分割 - ビルド完了後にk1m1とk2m1を並行して展開 - 総展開時間をかなり減らして下さい