アップタイムは、当社のマーケティングメトリックではありません。 私たちが作るあらゆる決定を形づけるエンジニアリング制約です。 1つのプラットフォームで事業全体を運営する場合、ダウンタイムは不便です。 フルストップです。 その責任は私たちが真剣に受け止めることであり、データベースからロードバランサーに至るまで、カモCRMアーキテクチャのあらゆる層に反映されています.
財団では、第一次データストアとしてYugabyteDBを実行しています。 YugabyteDBは、複数のノード間でデータを自動フェイルオーバーで複製する分散型のSQLデータベースです。 ノードがダウンした場合、クラスターはデータの損失やマニュアルの介入なしに動作し続けます。 その上に、アプリケーションレイヤーは、RKE2を介してKubernetes上で動作する64以上のステートレスマイクロサービスで構成されています。 各サービスが無状態であるため、他の人に影響を与えることなく、任意のインスタンスを交換またはスケールアウトすることができます.
リアルタイム通信は、複雑さの別の層を追加します。 ビデオ会議、メッセージング、電話通話はすべて、永続的な接続と低レイテンシを必要とします。 Janus WebRTC では、メッセージブローカー向けのメディアやNATS JetStream の WebRTC に対応しており、クラスター全体で高い利用可能な設定で展開しています。 ファイルの記憶層であっても、MinoO によって供給される、データの耐久性のための消去のコーディングによって構成されます.
結果は、単一のコンポーネントが失敗のポイントでないシステムです。 ダウンタイムゼロを実現したローリング展開で、1日あたりのアップデートを複数回展開します。 モニタリングスタックは、数千のメトリクスをリアルタイムで追跡し、オンコールエンジニアリングチームはあらゆる異常の秒内で警告されます。 99.9%の稼働時間数の背後にあるエンジニアリングで、今後もより一層改善を図っています.