クラシックフェイス質問:ユーザーは、あなたが理由かもしれない遅い訪問のウェブサイトの開発を反映しています。

まず、このサーバー側の問題が生じたとして、我々は簡単に理解することができる問題ではなく、クライアント側にとっての問題は、(悪いユーザーのドメインネームサーバの分析を含むネットワーク、等でもよい)があり、そしてもちろん、インタビュアーは、クライアントのあなたの知識をテストするために、そのようなドメイン名解決など、あなたはまた、テストポイントに多くの知識を持つことができますが、一人でこの問題に、より重点が知識サーバ側です。:考えられる原因を分析することにより、1次1

(1)考えられる理由:サーバーのエクスポートの帯域幅が十分ではありません。これは非常に一般的なボトルネックです。一方で、自身が購入することができるサーバーのエクスポート帯域幅は、(企業は、帯域幅が非常に高価で購入)、一度ユーザーの訪問は、さらに小さくユーザーへの大規模な、自然な出口帯域幅の共有によって複雑に、出てくるので、いくつかの非常に小さいですユーザーのアクセス速度は、多くのことをドロップします。もう一つは、そのような会社のWebサイト(サーバー)の多くとして、キャリア間のネットワーク帯域幅の減少は、電気通信ネットワーク上で引き起こすことがあり、そして万里の長城のお尻や中国聯通のブロードバンドの利用者側であれば、事業者間のネットワーク伝送ドッキングされたときに減少した帯域幅をもたらし得る、制限があるでしょう。

(2)二つの理由の可能:サーバーの負荷がしかし、あまりにも忙しいです、CPUやメモリ消費量を超えているとして、これは展開されていない、理解しやすいです。

(3)三つの理由かもしれ:ウェブサイトの開発コードが書かれていない、例えば、mysqlの文は、非常に時間のかかるを読み書きするために、データベースで、その結果、最適化されていません。

(4)は、おそらく4つの理由:データベースのボトルネックが、これは今上に一緒にすることができるための第三の理由であり、また、非常に一般的なボトルネックです。私たちは、このようなG Tの多くの多くとしてますます大規模なデータベース、なると読み書きのためのデータベースが非常に遅くなることが、とても大きくなり、インデックスの最適化は、いくつかの効率を向上させることができるが、しかし毎回場合には、言葉のような大規模なデータベースを持っていますこのような大規模なグローバルデータベースクエリのクエリは、それが自然に非常に遅くなります。データベースは、その後も理解するのはとても簡単学びました。

第二に、上記の考えられる理由、どのような方法やツールがそれを検出します

(1)ユーザーからのフィードバックサイトの訪問は、問題を特定する方法を、スローダウン。まず第一にユーザーが反映さの問題があるでしょう場合は、こちらをご覧あれば、何の問題は、ユーザーの問題がないことも、見にサイトを開設している、これが最初でどちら側かを決定することであるユーザー自身または例えば、問題のサーバーまたはWebサイト。

あなたは、ブラウザのデバッグ機能を使用することができ、独自のサーバーやウェブサイトの問題があることがわかった(2)(通常はブラウザがあるだろう)、データロードの様々なデバッグネットワーク速度を見て、人は多くの時間を見ることができる消費しますデータのその部分は、それをチェックアウトするのに長い時間を待っていた画像がロード、または一部のデータをロードすることが遅すぎる、あまりにも多くを消費しています。

(3)その後、サーバーに対する負荷は、サーバーのハードウェア(ネットワーク帯域幅、CPU、メモリ)消費ステータスを表示するために行くことができます。帯域幅は、彼らがピークに達しているかどうかを確認するために、トラフィックの監視を表示するために、帯域幅は、同社がWebサーバーを取るために独自のサーバーを購入する場合、あなたは自分のモニタリング環境を構築する必要があり、十分ではありません。あなたはアリクラウドテンセントは、これらのクラウド使用している場合は、これらのプラットフォームということ側は、あなたが見ることができる背景には、などCPU、帯域幅、などすべての側面を監視し提供します。

あなたは、ハードウェア資源の消費量が高くない見つける方が多い場合には(4)、それは問題を見に行っているプログラムではありません。チェックログを通ってくることができますこれは、PHP、Apacheのログ、ログなどのMySQLエラーログ、MySQLのスロークエリログ機能があると声明場合は特に、あなたは、ストリップのMySQL文は特に遅いではありません見ることができるようにログインしますそれはあまりにも時間がかかり、この文は問題である可能性が高いこと。

(5)データベースのように、このようなテーブルのファイルサイズとして見えるように直接見て、特に大きくなり、大きすぎます。

第三に、上記のこれらの問題に対処するために、どのような解決策とそれを最適化:

(1)輸出帯域幅の問題は、これは非常に単純ですが、プラスの帯域幅は、より多くの帯域幅を買うためにお金は非常に簡単です。

(2)mysqlの文の最適化、開発業務。

(3)データベース「は、スプリット」、速度を読み書きするには余りにも大きく、「スプリット・ライブラリ」、データテーブルまたはデータベースを分割することです。

(4)上記の表は、データベースは、通常は大きすぎるが、このような書き込み専用のプライマリサーバからメインのMySQL複製など他の最適化方法が先行し、次いで他方からなっているため、分割解体ライブラリがそうすることができないで仕上げは、他のサーバーを読み取るために更新された後、サーバーは、読み取ります。なアリのように二重の11回の活動は、運搬中にどのくらいの百万台のサーバーを一緒に知りません。

(6)並びに非リレーショナルデータベース以上と過去数年間、それは、メモリから直接ユーザアクセスデータを読み出す読み出しディスクより速度を読み取り、メモリにデータをキャッシュするキャッシングメカニズムを使用しますたくさんより速く、それがキーと値の読み取り機構だ、兄弟を聞いた後、理解していないと述べました。

(7)CDN(コンテンツ配信ネットワーク:CDN)は、複数の卵は、バスケットで、ユーザーの位置に近いデータを置く(例えば、絵やjsのスクリプトとして、サイトの静的ファイルの一部)、ユーザアクセスIPは、それが高速にバスケット広州から直接データを取得し、インテリジェントDNSを介してサーバーに解決だろう、広州、広州での判断の源です。画像といくつかのjsファイルは、一般的に同じような静的および動的データのここ概念、データの一部を動的に生成しながら、彼らは、国のイメージ、スピードアップに配布することができるウェブサイトの背景、あなたは、サーバが生成し、取得するサイトに移動する必要があります。この質問は取り扱わブラウザを呼ばれる2つのデータ表示を伴います。非同期ローディング技術Ajax技術の遠位端は、例えば、非同期要求データは、動的データは、これらの遅延読み込みを行うことができるが、これは非常に自分自身を理解し、発現しないかもしれません。よく知っている必要があります誰がいくつかのフロントエンド開発。

それはアーキテクチャに来るとき、サイトが運ぶことができなかった場合(8)上記の、最適化されていない、それはすべての負荷が同じであることを、サイトが同じサーバーで小規模なデータベース・サーバとウェブサーバであることを、このようなブログのようなアーキテクチャに適応することができないではありませんサーバー上。しかし、交通アップを運ぶことができなかった、あなたはサーバーの前にロードバランサを追加し、あなたがそのようなWebサーバのクラスタとして、そのようなクラスタを行うには、Webサーバー上のクラスタ・データベースを作成するよう、アーキテクチャ的に最適化する必要があり、サーバーを追加する必要があります負荷分散は、均一に各サーバに配布ユーザ要求分布のために、具体的に責任があります。
---------------------

Cipianエッセイだけで、知識の蓄積と、以下の原作者の情報を自分自身の学習を追加します。

著者:Victor_Lv_
出典:CSDN
オリジナルます。https://blog.csdn.net/lv_victor/article/details/53148421

 

おすすめ

転載: www.cnblogs.com/xmyfsj/p/10955175.html