前からReverse Proxy(apache worker) + Application Server(apache prefork)構成にしたかったんだけど、ずっと手付かずだった。
先日nginxのベンチマークをとる機会があって、これが凄く早い。簡単ななhtmlで較べると
- apache prefork 1400 req/sec
- apache worker 2000 req/sec
- nginx 8000 req/sec
ぐらい違う(色々動いているAtom 330環境でとった適当ベンチマークだけど)のに驚いて使ってみたくなってやってみた。
Amazon Linuxの場合は yum install nginx だけでインストールできちゃうので、前から動いてるapache preforkを別のポートで動いてもらい、nginxを起動。あとは先人の知恵を借りながらで数時間でできた。
WordPress Nginx proxy cache integrator さくらVPS: Nginx + Apache 構成の設定方法
WordPress サイトに nginx を導入する
今回は非力な環境(EC2 Micro)で最大限頑張れるようにReverse Proxyである程度cacheさせるようにした。測ってみたら 3500 req/sec 出てるから、単純計算すると10,000,000 req/h を超えるw
軽くハマったのはApache側がNameVirtualHostなのにProxyする時にHostヘッダーをつけてなかったこと。。