[高同時実行性] 数十億のトラフィック下で分散電流制限を実現するにはどうすればよいでしょうか?これらの理論をマスターしなければなりません! !

[高同時実行性] 数十億のトラフィック下で分散電流制限を実現するにはどうすればよいでしょうか?これらの理論をマスターしなければなりません! !

[[335435]]

著者は、正確にスケジュールされたタスクと遅延キュー処理機能を備えた、高同時実行シナリオ向けのシンプルで安定したスケーラブルな遅延メッセージ キュー フレームワークを個人的に開発しました。半年以上前にオープンソース化されて以来、10 社を超える中小企業に正確でタイムリーなスケジューリング ソリューションを提供することに成功し、実稼働環境でのテストにも耐えてきました。より多くの人々の利益のために、オープンソース フレームワークのアドレスが次のように提供されます。

https://github.com/sunshinelyz/mykit-delay

PS: ソース コードにスターを付けていただくことも歓迎します。また、素晴らしいコードを PR することもできます。

序文

インターネット アプリケーションでは、高同時実行システムは、Tmall の Double Eleven、JD.com の 618、フラッシュ セール、ラッシュ購入プロモーションなど、大量の高同時実行アクセスという大きな課題に直面しています。これらは、典型的な高トラフィックおよび高同時実行のシナリオです。

注: 元の記事はかなり長いため、理論、アルゴリズム、実践 (HTTP インターフェースの実践 + 分散電流制限の実践) の 3 つの部分に分かれています。

高同時実行システムの電流制限

短期間で大量のアクセストラフィックが発生する場合、システム自体の安定性を確保しながら、高い同時実行性を処理できるようにするにはどうすればよいでしょうか。私のシステムは分散型なので、問題を解決するにはマシンを追加するだけで十分だと言う人もいるでしょう。しかし、マシンを追加しても問題が解決しない場合はどうすればよいでしょうか?この場合、マシンを無期限に追加することはできません。サーバーのハードウェア リソースは常に制限されています。リソースが限られている中で、このような高トラフィックおよび高同時アクセスに対処するには、キャッシュ、非同期、劣化、電流制限、静的化など、バックエンド サービス システムを保護するための他の対策を講じる必要があります。

ここでは、まず電流制限の実装方法について説明します。

電流制限とは何ですか?

高同時実行システムでは、電流制限とは通常、システムを保護するために、高同時実行アクセスまたはリクエストの速度を制限すること、または一定期間内のリクエストの速度を制限することを指します。システムの速度制限ルール (システムによって制限される要求速度など) に達すると、これらの要求は次の方法で処理されます。

  • サービス拒否 (フレンドリーなプロンプトまたはエラー ページへのジャンプ)。
  • 列に並ぶか待つ(フラッシュセールシステムなど)。
  • サービスの低下(デフォルトのフォールバック データに戻ります)。

実際、これは 10r/s などのリクエストの速度を制限するもので、つまり 1 秒あたり 10 件のリクエストのみが許可され、リクエストの速度が制限されます。ある意味では、電流制限は実際には特定の周波数での量を制限することです。

電流制限は一般的に、システム サービス要求のレートを制御するために使用されます。たとえば、Tmall Double Eleven 電流制限、JD 618 電流制限、12306 チケット取得などです。

電流制限の使用シナリオは何ですか?

ここで、例を見てみましょう。ショッピングモールシステムを作ったとします。休日中に、注文を送信するためのインターフェースへのリクエスト数が通常時に比べて 50 倍近く増加していることに突然気付きました。すぐに注文を送信するためのインターフェースがタイムアウトし、例外がスローされ、ほとんど使用できなくなります。さらに、注文インターフェースがタイムアウトして利用できなくなったため、他のシステム サービスも失敗しました。

このような高トラフィックのシナリオにはどのように対処すればよいでしょうか?一般的な解決策は、フローを制限することです。もちろん、電流制限に加えて、他の解決策もあります。この記事では主に電流制限について説明します。

  • 希少資源のフラッシュセールおよび急ぎの購入。
  • 注文の送信、大量のデータのデータベースへの即時挿入など、データベースに対する高度な同時読み取りおよび書き込み操作。

電流制限は、同時実行性の高い問題に対処するための強力なツールであると言えます。電流制限により、瞬間的なピーク トラフィックによるシステム サービスの圧迫やサービス ダミーの発生を心配する必要がなくなり、最終的にはサービスがまったく提供されないのではなく、損失のあるサービスが提供されます。

<<:  デルテクノロジーズ「天山七剣士」がコンテナ永続ストレージの課題に取り組む

>>:  Kafka が高速である 6 つの理由

推薦する

ルクセンブルクのVPSは著作権が緩く、さまざまなビジネスホスティングに適しています。

ルクセンブルクの VPS の推奨事項、ルクセンブルクの VPS のレンタル、ルクセンブルクの VPS...

共同購入は粗利益の活路を模索:住宅コミュニティにサービスを提供するために製品単価を上げる

不安定な共同購入業界は、再び「寒波」に見舞われているようだ。共同購入ナビゲーションサイト「Tuan8...

ftlcloud: 「メーデーイベント」 - 米国 VPS 無料、香港 VPS - 四半期あたり 29 元、韓国 VPS - 半年あたり 80 元

メーデーの祝日を記念して、ftlcloud は新規ユーザー向けにサンノゼ データ センターで 1 か...

タイガートゥースベタには選択の余地がない

市場ニュースによると、テンセントは過去数ヶ月間、斗魚と虎牙の合併を推進しており、合併は早ければ今年末...

ウェブマスターは百度百科事典の最適化方法を盲目的に学ぶべきではない

最適化の方法はサイトの種類によって異なります。しかし、著者は、誰もが百度百科事典の最適化方法に夢中に...

アプリプロモーションのオフラインチャネルの連絡先リスト

D.Phone D.Phoneグループ本社 李建松 モバイル:18612887718 QQ:9666...

Vultr Australiaはどうですか?メルボルンクラウドサーバーレビュー

Vultr はオセアニア、具体的にはオーストラリアのメルボルンとシドニーにもデータセンターを提供して...

検索エンジンの弱点を知ることはSEO開発に役立つ

質問1:まず、BaiduとGoogleの観点から、ユーザーにどのような検索結果を提供する必要がありま...

企業のWeiboマーケティングを成功させるための8つの提案

Weiboマーケティングは必須です。しかし、ほとんどの企業はWeiboアカウントを開設して認証を受け...

西周システムの観点からクラウドコンピューティング、エッジコンピューティング、AIの関係を議論する

近年のクラウドコンピューティング、エッジコンピューティング、人工知能などの技術の発展を振り返ると、ク...

公立病院検索における現在のレベル情報が医療 SEO に与える影響

今日、Souwai の Q&A チャンネルを閲覧していたところ、次のような質問を見つけました...

ウェブサイトのコンテンツと外部リンクのどちらがより重要ですか?

いつもTeng Designをご愛顧いただき、誠にありがとうございます。今日は、誰もが疑問に思うトピ...

ダブル11メタバースブランドマーケティングトレンド!

一部のブランドは、ダブル11の実施方法をもはや知りません。セレブリティマーケティングは、もはやただ座...

2019年新規事業展望: 60人以上のKOLへのインタビュー、9つの注目分野、40の未来予測

今年は、新規事業分野の起業家、経営者、投資家、アナリストを訪問し、約60名のキーパーソンの知恵を借り...

VLANを写真と文章で詳しく解説しているので、一目でVLANがわかります

1. VLAN が必要な理由は何ですか? 1.1. VLANとは何ですか? VLAN (Virtua...