Freelance Web Engineer

レイテンシ比較 (東京/シンガポール/カリフォルニア)

2011-03-03  apache, aws, rails, benchmark

待ちに待った東京リージョンが2011年03月02日にスタートしました。そこで気になるのはコストとレイテンシ。コストに関してはこちらを見てもらうとして、実際Webアプリケーションを使ってどのぐらい速度が違うのかをベンチマークしてみました。

※ 更新(2011-03-03 10:23): カリフォルニアの計測値を更新しました。

計測条件、方法などは以下の通り:

計測地
東京都内
回線
サイバーホーム
比較リージョン
東京/シンガポール/カリフォルニア
計測方法
各リージョンでCloudFormationのテンプレートにある、「Rails Hello World Application」を構築する。そのアプリに対し、apache benchで計測。
コマンド: ab -c10 -n100 [host]

レイテンシ比較

とりあえずConnection Times部分のみで比較をしてみます。

東京

              min  mean[+/-sd] median   max
Connect:        5    9   3.3      6      13
Processing:   177 1498 285.7   1554    1872
Waiting:      176 1460 276.6   1516    1832
Total:        182 1507 285.5   1562    1884

シンガポール

              min  mean[+/-sd] median   max
Connect:       73   83   4.1     81      89
Processing:   496 1410 184.7   1443    1884
Waiting:      496 1389 179.9   1414    1884
Total:        578 1493 185.1   1529    1973

カリフォルニア

              min  mean[+/-sd] median   max
Connect:      112  121   5.1    123     126
Processing:   486 1383 180.5   1388    1798
Waiting:      482 1377 178.7   1384    1788
Total:        598 1504 181.2   1511    1924

東京はえええーー! なんと一桁msですよ。 ところが… 以下のトータル比較結果を御覧ください。

トータル比較

apache benchの結果すべてをリージョン毎に掲載します。結果としてApache Benchが一番早く終わったのはカリフォルニアです。これが意味するところは、AMIの処理速度が一番早い(最適化されている)ということではないでしょうか。「Time taken for tests(テストに要した時間)」は東京とカリフォルニアで6倍以上の差があります。まだ東京リージョンがローンチしたばかりなので、もしかすると今後スピードアップするかもしれません。←これはカリフォルニアの計測値が間違っていました。訂正します。

更新(2011-03-03 10:23): カリフォルニアの計測値を更新し、レイテンシ以外はそれほどさがないことを確認しました。当たり前といえば当たり前ですね。

ご参考になれば幸いです。

東京

$ ab -c10 -n100 http://railshell-elasticl-rx1cf2x0wat6-94656241.ap-northeast-1.elb.amazonaws.com/test/whereami

This is ApacheBench, Version 2.3 <$Revision: 655654 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/

Benchmarking railshell-elasticl-rx1cf2x0wat6-94656241.ap-northeast-1.elb.amazonaws.com (be patient).....done


Server Software:        WEBrick/1.3.1
Server Hostname:        railshell-elasticl-rx1cf2x0wat6-94656241.ap-northeast-1.elb.amazonaws.com
Server Port:            80

Document Path:          /test/whereami
Document Length:        326 bytes

Concurrency Level:      10
Time taken for tests:   15.810 seconds
Complete requests:      100
Failed requests:        0
Write errors:           0
Total transferred:      82593 bytes
HTML transferred:       32600 bytes
Requests per second:    6.33 [#/sec] (mean)
Time per request:       1581.024 [ms] (mean)
Time per request:       158.102 [ms] (mean, across all concurrent requests)
Transfer rate:          5.10 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        5    9   3.3      6      13
Processing:   177 1498 285.7   1554    1872
Waiting:      176 1460 276.6   1516    1832
Total:        182 1507 285.5   1562    1884

Percentage of the requests served within a certain time (ms)
  50%   1562
  66%   1608
  75%   1664
  80%   1680
  90%   1732
  95%   1801
  98%   1874
  99%   1884
 100%   1884 (longest request)

シンガポール

$ ab -c10 -n100 http://RailsHell-ElasticL-1N3FRHZ2J1GPY-1956348860.ap-southeast-1.elb.amazonaws.com/test/whereami

This is ApacheBench, Version 2.3 <$Revision: 655654 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/

Benchmarking RailsHell-ElasticL-1N3FRHZ2J1GPY-1956348860.ap-southeast-1.elb.amazonaws.com (be patient).....done


Server Software:        WEBrick/1.3.1
Server Hostname:        RailsHell-ElasticL-1N3FRHZ2J1GPY-1956348860.ap-southeast-1.elb.amazonaws.com
Server Port:            80

Document Path:          /test/whereami
Document Length:        327 bytes

Concurrency Level:      10
Time taken for tests:   15.652 seconds
Complete requests:      100
Failed requests:        0
Write errors:           0
Total transferred:      82890 bytes
HTML transferred:       32700 bytes
Requests per second:    6.39 [#/sec] (mean)
Time per request:       1565.196 [ms] (mean)
Time per request:       156.520 [ms] (mean, across all concurrent requests)
Transfer rate:          5.17 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:       73   83   4.1     81      89
Processing:   496 1410 184.7   1443    1884
Waiting:      496 1389 179.9   1414    1884
Total:        578 1493 185.1   1529    1973

Percentage of the requests served within a certain time (ms)
  50%   1529
  66%   1561
  75%   1574
  80%   1599
  90%   1653
  95%   1694
  98%   1813
  99%   1973
 100%   1973 (longest request)

カリフォルニア

$ ab -c10 -n100 http://RailsHell-ElasticL-1TX9S0ODT2B2X-1213131784.us-west-1.elb.amazonaws.com/test/whereami

This is ApacheBench, Version 2.3 <$Revision: 655654 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/

Benchmarking RailsHell-ElasticL-1TX9S0ODT2B2X-1213131784.us-west-1.elb.amazonaws.com (be patient).....done


Server Software:        WEBrick/1.3.1
Server Hostname:        RailsHell-ElasticL-1TX9S0ODT2B2X-1213131784.us-west-1.elb.amazonaws.com
Server Port:            80

Document Path:          /test/whereami
Document Length:        322 bytes

Concurrency Level:      10
Time taken for tests:   15.788 seconds
Complete requests:      100
Failed requests:        0
Write errors:           0
Total transferred:      82392 bytes
HTML transferred:       32200 bytes
Requests per second:    6.33 [#/sec] (mean)
Time per request:       1578.840 [ms] (mean)
Time per request:       157.884 [ms] (mean, across all concurrent requests)
Transfer rate:          5.10 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:      112  121   5.1    123     126
Processing:   486 1383 180.5   1388    1798
Waiting:      482 1377 178.7   1384    1788
Total:        598 1504 181.2   1511    1924

Percentage of the requests served within a certain time (ms)
  50%   1511
  66%   1562
  75%   1606
  80%   1632
  90%   1680
  95%   1723
  98%   1778
  99%   1924
 100%   1924 (longest request)
comments powered by Disqus