元職人がエンジニアになるための物語ではある

元職人が建設業の事やRuby on Rails , IoT... etc...勉強したことや教えてもらったこのをメモするブログ。

ネットワーク処理最適化の基礎3原則

ネットワーク処理を最適化するうえで意識すること

  • データの転送量をなるべく小さくすること
  • データの転送回数をなるべく少なくすること
  • データの転送距離をなるべく短くすること
データの転送量をなるべく小さくすること

転送するコストはデータ量に比例し、当然ながら大きければ大きいほど転送にコストがかかる。

データの転送回数をなるべく少なくすること

HTTP/1ではリクエストごとにオーバヘッドや同時接続数の制約が大きく、ネットワーク処理におけるボトルネックになりがち。ページのロード時間の短縮に繋がる。

HTTP/2では通信の多重化と並行リクエスト、HPACKによるヘッド圧縮によってリクエスト処理が効率化される。

データの転送距離をなるべく短くすること

通信するデバイスと実際にデータをやりとりしているサーバとの物理的な距離。 データの転送距離が短いほどラウンドトリップタイムが短くなる。 日本国内のサーバーへのアクセスは100ミリ秒 アメリカ西海岸は200~300ミリ秒