Meizu マルチコンピュータルーム展開ソリューション_PHP チュートリアル
Meizu マルチ コンピューター ルーム展開計画
なぜマルチ コンピューター ルーム展開を行う必要があるのか
2014 年から 2015 年にかけて Meizu が変革し、売上が爆発的に増加した後、インターネット サービス ビジネスがますます増加し、ユーザー ベースが拡大しました。サイズが大きくなると、従来の 1 つのコンピュータ ルームの拡張アーキテクチャでは Meizu の開発に対応できなくなります。また、国内の複雑なネットワーク環境では、1 つのコンピュータ ルームでは信頼性のニーズを満たすことができなくなります。近年、光ケーブルが掘り返されたり、コンピューター室の停電が頻繁に発生しています。例えば、アリペイの光ファイバーが掘削されて事業が停止したほか、昨年は微信も大規模な障害が発生し、光ファイバーも掘削された。単一のコンピューター室が故障するリスクに加えて、ユーザーは近くのアクセスに対する強い要求も持っています。
技術的な課題
- コンピュータールーム間のネットワーク遅延と帯域幅の制限、オペレーターの専用回線のレンタルは非常に高価であり、信頼性が保証できない
- コンピュータールーム間のトラフィックの正確なスケジューリング。変化が大きすぎてはいけません。
- マルチコンピュータールームソリューションの最大の課題は、一貫性など、コンピュータールーム間のネットワーク遅延によって引き起こされる一連の問題です。 もちろん、業界には、アリババの統合ソリューションなど、いくつかの成熟したソリューションもあります。ここでは、Tencent のセット ソリューションと Weibo のクロス コンピュータ ルーム ソリューションは主に集中型で書かれており、迅速な切り替えソリューションを提供します。
Meizu マルチコンピューター ルーム ソリューション
上記のソリューションから教訓を引き出し、ビジネスを整理し、次の 2 つのビジネスにマッピングします:
もっと読んで少なく書くユーザーごとに分ける- もっと読む 書くことはまれです
- このタイプのビジネスは主に読み取りで、書き込みはほとんどないため、このタイプのビジネスは読み取り専用ビジネスとして分類されます。
API は、モバイル アプリ ストアが使用するインターフェイスを提供します。主にリスト データを読み取り、ユーザーに表示します。この部分の「読み取り」については、基本的にキャッシュから読み取り、データベースへの依存度は非常に低くなります。 ; そして、「書き込み」は統計やコメントなどから得られます。
- このバックエンドは、企業の社内運用部門が使用するために提供されており、リストの保守、アプリケーションのアップロード、リストの削除などの機能にも多くの「書き込み」が含まれています。
- ビジネスの可用性を評価すると、アプリケーション ストア (API インターフェイス) の可用性要件が最も高くなりますが、運用バックエンドと開発者コミュニティの可用性要件はわずかに低くなります。
データの一貫性を確保するために、「書き込み」は依然としてシングルポイント書き込みであり、コンピューター ルーム全体でコア コンピューター ルームに直接書き込まれます。 2 つのタイプがあります。1 つは、メッセージ キューを介してリモート コンピューター ルームに書き込む方法です。コンピューター ルームのネットワークに問題がある場合でも、「書き込み」は MQ に蓄積されるため、基本的にユーザー エクスペリエンスには影響しません。蓄積されたデータはネットワークがスムーズになった後に取り出されます。もう 1 つの種類の「書き込み」では、「書き込み」が成功したかどうかをすぐに知る必要があるため、この部分のネットワークに問題がある場合は、書き込みが失敗する可能性があるため、コンピュータ ルーム全体のデータベースに直接書き込まれます。ダウングレード処理を行います。
また、コンピューター室のトラフィックのスケジュールには GSLB を使用していますが、これについては後で詳しく説明します。
読み書きバランスのとれたビジネス
ここでの読み書きバランスのとれたビジネスの重要な特徴は、すべてのデータをユーザーの次元に従ってセグメント化できることです。それらの間にはほとんど相関関係がありません。たとえば、当社の同期サービスは、携帯電話を紛失したり、更新して消去する必要がある場合に、携帯電話上のすべてのデータ (連絡先、テキスト メッセージ、設定、Wi-Fi、入力方法の設定など) をクラウドに同期します。 、いつでもデータを取得できるので、データが失われないようにしてください。
以下は同期ビジネスのシングルマシンルームアーキテクチャです:
私たちのユーザーアクセスインターフェイスも2つの部分に分かれており、1つの部分は携帯電話用の実用的なAPIであり、もう1つの部分は直接操作(変更)用です。連絡先の)Web 側。 Web インターフェースで取得したリクエストは、連絡先同期、メッセージ同期、設定項目同期などのバックエンドサービスに転送されます。バックエンド サービスは、ユーザーのルーティング情報を別の DB シャードに保存します。ここでクロスコンピュータールームソリューションを作成すると、ユーザーに応じてグローバルルーティングを直接実行し、異なるコンピュータールームにルーティングできるため、より便利です。
マシンルーム間のアーキテクチャ図は次のとおりです:
ビジネス データとサービスを 1 つのユニットにパッケージ化しており、1 つのユニットが一定数のユーザーにサービスを提供します。各ユニットには完全なデータとサービスが含まれており、個別に展開できます。各コンピュータ室には複数のユニットがあり、各ユーザーのデータはローカル バックアップとリモート バックアップがあります。コンピューター室に障害が発生した場合、バックアップ データを取り出してユーザーに提供できます。
ユーザーがAPIを通じて当社のサービスにアクセスする場合、GSLBはスケジューリングに使用され、ユーザーはまずGSLBからユーザーデータの場所を取得します(ユーザーデータは同時に特定のコンピュータールームでのみ提供されます)。次に、クライアント要求をスケジュールします。 適切なコンピューター室に移動します。
Web サービスは GSLB を使用できないため、ユーザーのリクエストを正確にスケジュールできないため、Web リクエストは困難です。この計画については、後の交通スケジュールで説明します。
コンピューター室のトラフィックの正確なスケジューリング
複数のコンピューター室になると、トラフィックのスケジューリングが必要になります。トラフィックをスケジュールする最も簡単な方法は、スマート DNS サービスを使用することです。以下に示すように:
LocalDNS からのリクエスト内の IP に基づいて、どの地域のどの ISP とユーザーを決定し、対応する地域の対応する ISP とコンピューター ルームにスケジュールすることができるのは DNS のみです。スマートDNSのIPライブラリです。いくつかの欠点があります:
- DNS ハイジャック 私たちの国では、特に第 2 層および第 3 層都市の事業者によって、DNS ハイジャックが時々発生します。これは基本的にスマートDNSでは解決できません
- ローカルDNSが8.8.8.8などユーザーが指定したDNSサーバーに設定されている場合、スマートDNSサーバーが取得するLocalDNSは米国のアドレスとなりISPに対応できません。スマート DNS サービスは、設計者の好みにのみ基づくことができ、分析が提供されると、ユーザーは間違った ISP や間違ったコンピューター ルームを見つける可能性があります。
- ユーザー情報に基づいてスケジュールを設定することはできません。一部のデータは、特定のコンピューター室でのみ利用可能です。DNS プロトコルはユーザー識別子を運ぶことができないため、正確な分析を行うことは困難です。
- サーバーのダウンタイムを検出できません。
そのため、特定の企業向けに、GSLB サービスにアクセスしました。
このサービスは、リクエストを開始する前に、独自の GSLB サービス (または HttpDNS) にアクセスすることで、ユーザーを連れて行くことができます。データがどのコンピュータ室にあるかを特定し、IP を使用してビジネス サービスにアクセスするための識別。
はいくつかの明白な利点をもたらします:
* 可以根据IP或者UID等等信息精确调度。* 避免DNS劫持。* 用户手工设置DNS也不会调度错误。
現在、上記のアプリケーション センター、ユーザー同期 API アクセスなど、すべてのクライアント アクセスは GSLB に接続されています。
しかし、この解決策はクライアント側の HTTP および HTTPS リクエストにのみ適しており、ブラウザーは GSLB が何であるかを認識しません。ユーザー同期 API アクセスは GSLB を使用して実行できますが、Web にアクセスする場合、ブラウザーが GSLB を認識しないため、GSLB をトラフィック スケジュールに使用できません。また、スマート DNS を使用している場合は、ユーザー ID に基づいてトラフィックを正確にスケジュールできません。
上記の考慮事項に基づいて、私たちは 3 番目のソリューションである GSLB + スマート DNS を提案しました。
ユーザーがサービスを要求する前に、DNS によって解決されたサーバーを見つけてデータを取得します。 GSLB サービスは、ユーザーを検索します。 ユーザー データがこのコンピューター ルームにある場合、データは直接返されます。それ以外の場合、ユーザーの要求は適切なコンピューター ルームにリダイレクトされ、再開始されます。リクエスト。
この解決策により、ユーザーのブラウザーのドメイン名が変更され、ユーザー エクスペリエンスに影響を与える可能性があります。また、ドメイン名のハイジャックは回避できません。
概要:
この記事では、主に Meizu の複数コンピュータ室の災害復旧計画とその導入過程で遭遇した問題点と対策、Meizu の中核となるコンピュータ室の移行計画と問題の解決策を紹介します。
複数のコンピューター室の展開に関してどのような洞察と経験をお持ちですか?コメントでお気軽に共有してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











ここ数日、Ice Universeは、サムスンの次期主力スマートフォンであると広く信じられているGalaxy S25 Ultraの詳細を着実に明らかにしている。とりわけ、リーカーはサムスンがカメラのアップグレードを1つだけ計画していると主張した

OnLeaks は、X (旧 Twitter) のフォロワーから 4,000 ドル以上を集めようとして失敗した数日後、Android Headlines と提携して Galaxy S25 Ultra のファーストルックを提供しました。コンテキストとして、h の下に埋め込まれたレンダリング イメージ

TCLは、2つの新しいスマートフォンの発表に加えて、NXTPAPER 14と呼ばれる新しいAndroidタブレットも発表しました。その巨大な画面サイズはセールスポイントの1つです。 NXTPAPER 14 は、TCL の代表的なブランドであるマット LCD パネルのバージョン 3.0 を搭載しています。

ここ数日、Ice Universeは、サムスンの次期主力スマートフォンであると広く信じられているGalaxy S25 Ultraの詳細を着実に明らかにしている。とりわけ、リーカーはサムスンがカメラのアップグレードを1つだけ計画していると主張した

Vivo Y300 Pro は完全に公開されたばかりで、大容量バッテリーを備えた最もスリムなミッドレンジ Android スマートフォンの 1 つです。正確に言うと、このスマートフォンの厚さはわずか 7.69 mm ですが、6,500 mAh のバッテリーを搭載しています。これは最近発売されたものと同じ容量です

Motorola は今年数え切れないほどのデバイスをリリースしましたが、そのうち折りたたみ式デバイスは 2 つだけです。ちなみに、世界の大部分ではこのペアが Razr 50 および Razr 50 Ultra として受け入れられていますが、Motorola は北米では Razr 2024 および Razr 2 として提供しています。

Redmi Note 14 Pro Plusは、昨年のRedmi Note 13 Pro Plus(Amazonで現在375ドル)の直接の後継者として正式に発表されました。予想通り、Redmi Note 14 Pro Plusは、Redmi Note 14およびRedmi Note 14 Proと並んでRedmi Note 14シリーズをリードします。李

サムスンは、ファンエディション(FE)スマートフォンシリーズをいつアップデートするかについて、まだ何のヒントも提供していない。現時点では、Galaxy S23 FE は 2023 年 10 月初めに発表された同社の最新版のままです。
