今更感まんさいですがS3へアップロードする際、エンドポイントとインターネット経由だと速度的な違いどうだったかなと思って計測しました。
環境
EC2(@東京リージョン) →→→ S3(@東京リージョン)
結果
インターネット経由
500Mのファイル | 2GBのファイル | |
1回目 | real 0m5.193s user 0m3.201s sys 0m2.455s | real 0m14.844s user 0m11.442s sys 0m10.094s |
2回目 | real 0m5.123s user 0m3.224s sys 0m2.449s | real 0m15.080s user 0m11.346s sys 0m9.690s |
3回目 | real 0m5.106s user 0m3.204s sys 0m2.430s | real 0m15.096s user 0m11.208s sys 0m10.042s |
エンドポイント経由
500Mのファイル | 2GBのファイル | |
1回目 | real 0m5.401s user 0m3.328s sys 0m2.422s | real 0m17.847s user 0m11.266s sys 0m10.227s |
2回目 | real 0m5.190s user 0m3.158s sys 0m2.634s | real 0m14.817s user 0m11.606s sys 0m9.913s |
3回目 | real 0m5.045s user 0m3.121s sys 0m2.453s | real 0m14.795s user 0m11.514s sys 0m10.022s |
ほとんど変わらないです。ただエンドポイント経由だとセキュアなのでわざわざインターネット経由で送る必要はないです。帯域もセーブできるし。
その他
今回のテストのためにダミーファイルを作る必要があったんですけど今まで「dd」コマンドでやってたんですけど情弱だと気づきました。
今まで
# time dd if=/dev/zero of=2dummy.dat bs=1M count=2000
2000+0 records in
2000+0 records out
2097152000 bytes (2.1 GB) copied, 14.2892 s, 147 MB/s
real 0m14.319s
user 0m0.000s
sys 0m1.134s
新発見
# time fallocate -l 2G 2dummy.dat
real 0m0.005s
user 0m0.001s
sys 0m0.000s
はいです。