Optimzing hard drive IO for proxy_pass

highclass99 highclass99 at gmail.com
Sun Jul 26 15:31:47 UTC 2015


Sorry everyone about the multiple posts with the same content...
My own posts weren't coming to me at all through email...
I just checked
http://mailman.nginx.org/pipermail/nginx/2015-July/thread.html
and found out all my posts were posted.

Again I apologize for the inconvenience.

:(

It was sincerely a mistake.


On Mon, Jul 27, 2015 at 12:29 AM, highclass99 <highclass99 at gmail.com> wrote:

> I have server A with a large HDD at IDC 1 (TB hdd)
> I have server B with cheap bandwidth at IDC 2 (very small virtual server
> 20 GB hdd)
>
> I send all image requests to server B, and it caches from A.
> My problem is that on server IO is really high
>
> Server B iostat
> Device:         rrqm/s   wrqm/s   r/s   w/s   rsec/s   wsec/s avgrq-sz
> avgqu-sz   await  svctm  %util
> sda              34.01   517.21 1263.36 76.72 19922.27  4751.42    18.41
>   2.95    2.20   0.36  47.67
> sda1              0.00     0.00  0.00  0.00     0.00     0.00     0.00
> 0.00    0.00   0.00   0.00
> sda2             34.01   517.21 1263.36 76.72 19922.27  4751.42    18.41
>   2.95    2.20   0.36  47.67
> dm-0              0.00     0.00 1297.37 593.93 19922.27  4751.42    13.05
>     8.78    4.64   0.25  47.71
> dm-1              0.00     0.00  0.00  0.00     0.00     0.00     0.00
> 0.00    0.00   0.00   0.00
>
> Here is my related nginx config
> --------------- cut --------------------------------------
>         proxy_cache_path /cache levels=1:2
>                                         keys_zone=MEDIA:200m
>                                         inactive=2d max_size=6g;
> --------------- cut --------------------------------------
>         location / {
>             proxy_pass http://SERVER_A <http://server_a/>
>             proxy_cache MEDIA;
>             proxy_cache_key "$scheme$request_uri";
>
>             proxy_cache_valid  200 302 304 7d;
>             proxy_cache_valid  301 1h;
>             proxy_cache_valid  any 1m;
>             proxy_cache_use_stale error timeout invalid_header http_500
> http_502 http_503 http_504 http_404 updating;
>                         proxy_ignore_headers Cache-Control Expires
> Set-Cookie;
>                         proxy_cache_min_uses 3;
>                         proxy_cache_revalidate on;
>                         proxy_cache_lock on;
>                         proxy_cache_lock_timeout 15s;
>
>             expires 7d;
>         }
> --------------- cut --------------------------------------
>
> Server B has nothing else running.
> Server B is sending about 200~400 MBs traffic outside
> Is such a high IO load normal?
> Is there a way I can decrease the IO load while keeping the caching of
> server B efficient?
>
> Thank you.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.nginx.org/pipermail/nginx/attachments/20150727/4f859afc/attachment.html>


More information about the nginx mailing list