コメントを投稿するにはログインが必要です
ログインページへ
八百万のOSSnginxは「速いWebサーバー」というより、Webアプリケーションの前段でクライアントとの通信を受け持つ定番OSSです。
遅いクライアント、大量接続、静的ファイル配信、gzip圧縮、バッファリング、キャッシュをnginxに任せることで、アプリケーションサーバーは本来の処理に集中できます。
今回は、C10K問題、イベント駆動、ノンブロッキングI/Oといったnginxの基本的な考え方から、静的ファイル配信、gzip、upstream keepalive、古いコピペ設定が変わりつつある話までを取り上げました。
「とりあえずnginxを置く」と言われがちな理由を、設定例の暗記ではなく、Webアプリケーションを楽にするための役割分担として整理していきます。
EnvoyやPingoraとの違い、Cloudflareで使われてきた実績、そして「全部入り」はUnix哲学に反するのか、という話も取り上げています。
nginxをなんとなく使っている人にも、設定の意味を改めて整理したい人にも楽しめる回です。
- nginx: https://nginx.org/
- freenginx: https://freenginx.org/
- NGINX Plus(エンタープライズ版): https://www.f5.com/products/nginx/nginx-plus
- Envoy: https://www.envoyproxy.io/
- Pingora(Cloudflareのプロキシ実装): https://github.com/cloudflare/pingora
- H2O(Fastlyで使われるHTTPサーバー): https://github.com/h2o/h2o
- PHP: https://www.php.net/
- Node.js: https://nodejs.org/
- AWS ALB(Application Load Balancer): https://aws.amazon.com/elasticloadbalancing/application-load-balancer/
- Cloudflare: https://www.cloudflare.com/
- Fastly: https://www.fastly.com/
- Mercurial: https://www.mercurial-scm.org/
- OpenSSL: https://www.openssl.org/
- Redis: https://redis.io/
- Go: https://go.dev/
- epoll(Linux man page): https://man7.org/linux/man-pages/man7/epoll.7.html
─────────────
YouTube: https://youtu.be/e8lkL79n9KU
Web: https://yaoyorozu-oss.henteko07.com/
X: https://x.com/yaoyorozu_oss