sos の 作業メモ

プログラミングや英会話学習、マイルや旅行、日常生活など。最近はWebFormなASP.NETのお守りがお仕事です。

日々の生活にhappyをプラスする|ハピタス Gポイント

「ハイパフォーマンスブラウザネットワーキング」を読みました

久しぶりにさらっと読めそうな技術本を読んでみました。

ハイパフォーマンス ブラウザネットワーキング ―ネットワークアプリケーションのためのパフォーマンス最適化

ハイパフォーマンス ブラウザネットワーキング ―ネットワークアプリケーションのためのパフォーマンス最適化

第一部 ネットワークの基礎

ネットワークやレイテンシ・帯域幅というのがどういう物なのかといった事から、 TCPUDPTLSのざっくりした説明と、ネットワーク周りからみて、パフォーマンスを 改善し、維持するために考えるべきことが解説されています。

エンジニアの嗜みとしてさらっとは知っていることではありましたが、 私のような、ネットワークが本業ではない人間でも、もう一歩踏み込める内容でとても勉強になりました。

第二部 ワイヤレスネットワークのパフォーマンス

無線によるネットワークの基礎、WiFiの規格や、1G,2G,3G,4Gといったモバイルネットワークの世代、 GSMからはじまり、UMTS,CDMA2000,HSPA+,LTE,LTE-Advancedといった規格の説明と大まかな 制御方法等が解説されています。

モバイルデバイスにとって、プレゼンテーション層、ネットワーキング、バッテリ持続時間は重要であり、それぞれにベストプラクティスがあるが、全てを調和させるのは難しくバランスをとることが大切とか、どう最適化をしていくか等の方向が書いてあります。

第三部 HTTP

HTTP 0.9に始まり、1.0/1.1/2.0へとどのように発展したか、プロトコルの内容も交えながら解説。 この2年、新しい分野の勉強がほとんどできていなかったため、ざっくりレベルではありますがSPDYやHTTP 2.0の構造が示されていて非常に助かりました。

シンプルなだけにHTTPのベストプラクティスって大変ですよね。

第四部 ブラウザAPIプロトコル

XHR(XMLHttpRequest), SSE(Server-Sent Events), WebSocket, WebRTCといった、昨今のwebアプリを担う技術を駆け足でざっと紹介。 webアプリ方面はほぼノータッチだったせいかほんと疎くて、ajaxが登場したころからJavaScriptで簡単に いろいろな事を実装できるのかが謎だったのですが、やっとどういうものかをぼんやり理解できた感じです。

WebRTCのところは実コードと略語が多くて少し眠くなって来るのが…

 


執筆が2014年の頭ということで、HTTP/2やWebRTCが最新の情報ではなく幾分古いですが、 今まで薄ぼんやりとしたままにしていたことが、おぼろげながら輪郭が浮かび上がってきたような気がします。

難解な数式も小難しい理論もでてきませんし、割と平易な文章でかかれていますので、 Internetを利用するアプリを作るプログラマだけでなく、webコンテンツ制作者等 ネットワークに少しでも絡む立場の人はmustに近いshoudで読んでおいて損はない内容だと思います。