Nginx、Webサーバを10倍高速化するノウハウを公開
紹介されている主なノウハウは次のとおり。
ロードバランシングとリバース・プロキシサーバの導入
ダイナミック・キャッシュの導入とスタティック・コンテンツの活用
適切なメディアファイルの使用(写真にはJPEG、グラフィックにはPNG、動画にはMPEG-4、音楽にはMP3といったもの)
HTMLやテキストデータの圧縮機能の有効化
TLS/SSLの最適化
HTTP/2やSPDYの活用
バッファ、キープアライブ、ワーカープロセス、ソケットシャーディング、スレッドプールなど性能に関連する機能の活用やチューニング
Nginxの性能に関与するLinuxカーネルのパラメータの変更(net.core.somaxconn、sys.fs.file_max、net.ipv4.ip_local_port_range、net.ipv4.tcp_fin_timeout)
関連するソフトウェアを最新版へアップグレード
ロードバランシングを導入すれば高いスケーラビリティが期待できるが、それだけ予算も必要になる。Nginxの設定やカーネルのパラメータ設定の変更などで実現できる高速化もあることから、Nginxの高速化に興味ある場合には試してみる価値はありそうだ。