1. redisを説明する目的は何ですか?
トピック:高同時性、1億レベルのトラフィック、高性能、大規模なデータシナリオ、eコマースWebサイトの製品詳細ページシステムのキャッシュ構造
大規模な電子商取引Webサイトである製品詳細ページシステムは多くの部分で構成されますが、高い同時実行性と10億レベルのトラフィックをサポートするのは主に大規模キャッシュアーキテクチャです。
この大規模なキャッシュアーキテクチャでは、redisが最も基本的なレイヤーです。
高い同時実行性、redisに加えて、キャッシュアーキテクチャには他のコンポーネントがありますが、redisは重要です
多数の個別のリクエスト、ランダムなリクエスト、未知のユーザーからのさまざまなリクエスト、数千万のユーザーがアクセスし、各ユーザーが10回アクセスする;集中リクエスト、1人のユーザーがアクセスし、1億回アクセスする
製品の表示をサポートするために最も重要なことは、毎日数億もの要求トラフィックに抵抗し、高い同時アクセスをサポートする、redisクラスターです。
キャッシュアーキテクチャ全体のRedisクラスター、他のパーツと組み合わせて大きなキャッシュシステムを形成する方法については、後で説明します
2.説明されたredisはどのような効果を達成できますか?
redisのさまざまなナレッジポイントを説明する前に、説明したい各ナレッジポイントについて、解決すべき問題は何かを強調しました。??
redis:永続性、レプリケーション(マスタースレーブアーキテクチャ)、センチネル(高可用性、アクティブ/スタンバイスイッチング)、redisクラスター(大容量データ+水平拡張+高可用性/アクティブ/スタンバイスイッチング)
永続性:高可用性の一部、Redisクラスターで災害が発生した場合(たとえば、一部のマスター+スレーブがすべて停止している)、データを迅速に復元し、サービスの可用性を迅速に実現し、システム全体の高可用性を実現する方法
レプリケーション:マスター-スレーブアーキテクチャ、マスター->スレーブレプリケーション、個別の読み取りおよび書き込みアーキテクチャ、書き込みマスター、読み取りスレーブ、水平拡張スレーブは、より高い読み取りスループット、高い同時実行性をサポート、100,000、200,000、300,000、数百万、QPS、水平拡張
Sentinel:高可用性、マスター/スレーブアーキテクチャ、マスターに障害が発生した場合、スレーブをマスターにすばやく切り替えて、迅速な災害復旧と高可用性を実現
Redisクラスター:マルチマスター読み取りおよび書き込み、分散データストレージ、水平拡張、水平拡張、最大データボリューム+読み取りおよび書き込みQPSの高速サポート、自動マスター->スレーブマスター-スレーブスイッチング、高可用性
基盤となるキャッシュシステムであるredisは、あらゆるレベルで拡張でき、大量のデータ(1T +、数十T、10G * 600 redis = 6T)をサポートし、高読み取りおよび書き込みQPS(数万QPS、10ユニットでredisスタンドアロン)をサポートします。数十万のQPS)、高可用性(Redisインスタンスごとに、優れたAOF + RDBバックアップ戦略+災害復旧戦略、スレーブ->マスタースイッチを実行します)
1T +大容量データ、100,000 +読み取りおよび書き込みQPS、99.99%の高可用性
3. redisの最初のエンタープライズレベルのアーキテクチャ
データボリュームが大きくない場合は、1つのマスターで対応できます。一般的に、キャッシュの総量は10G以内なので、次のアーキテクチャに従ってredisをデプロイすることをお勧めします
Redisの永続性+バックアップソリューション+災害復旧ソリューション+レプリケーション(マスタースレーブ+読み取り/書き込みの分離)+センチネル(センチネルクラスター、3ノード、高可用性)
サポートできるデータの量は10G以内、サポートできるQPSは約数万、サポートできるQPSは100,000を超える場合があります(必要に応じて、スレーブノードを水平に拡張できます)。
4. Redisの2番目のエンタープライズレベルアーキテクチャ
コースのトピック、大規模なeコマースWebサイトの製品詳細ページの構造など、大量のデータがある場合(中国の上位3つのeコマースWebサイトのベンチマークとして、* bao、* dong、* Ningyigou)、データ量は膨大です
膨大なデータ
redisクラスター
マルチマスター分散ストレージデータ、水平拡張
より多くのデータをサポートし、1T +以上で問題はなく、マスターを拡張するだけです
QPSの読み取りと書き込みがそれぞれ数十万に達しても問題ありません。ただし、マスターが拡張可能で、redisクラスターが可能で、読み取りと書き込みの分離が可能であり、サポートがあまり良くなく、読み取り専用でスレーブにアクセスして読み取ることができます。
99.99%の可用性、問題なし、スレーブ->マスターマスター-スレーブスイッチ、冗長スレーブにより、ソリューションの可用性がさらに向上します(各スレーブはスレーブをハングさせますが、クラスター全体で3つのスレーブ冗長性が追加されます)
このコースでは、両方のアーキテクチャセットについて説明します。フォローアップビジネスシステムの開発は、主にredisクラスタに基づいています。
5.コースで説明したプロジェクトはどこに進みましたか?
フォローアップのビジネスシステム開発を行います。redisアーキテクチャの展開が最初であり、非常に重要です。アーキテクトとして、システムを設計するときは、最下層を考慮する必要があります。 Redisの同時実行性、パフォーマンス、サポート可能なデータの量、および可用性
redis:水平方向の拡張、大量のデータ、100,000回の読み取りと書き込みのQPS、99.99%の高可用性
アーキテクチャの観点から、マシンが十分である限り、1Tデータボリューム、500,000読み取りおよび書き込みQPS、99.99%まで、私たちのredisを水平方向に拡張できます。
大規模eコマースサイトの商品詳細ページシステム、大規模キャッシュアーキテクチャ設計を正式に開始