月間3億imp↑の広告配信システムをAWSを活用してみる
なんか月間3億impくらいある広告配信の仕組み(openx,open ads)をamazon(AWS)で運用してるんですが計算めんどくさすぎる
管理用サーバ m1.large
- apache+php(管理画面),MEMCACHEを使用
- microじゃ性能が足りず、本来ならsmallが良さそうなんだけど64bitのsmallインスタンスは存在しないのでラージインスタンスを使ってる
- サーバ構成の見直しを予定してるのでreservedインスタンスは使えない
$0.4 × 24時間 × 30日 = $230.4
DBサーバ db.m1.large
- mysql5.5.8を使用してる
- スモールとラージの間のインスタンスがほしい…
- スモールだとゴールデンタイムの処理が間に合わないからラージにしたけど、3億impが大規模だと思ってない。
- ケチってmulti-AZは使ってない
- reservedインスタンス検討中
$0.52 × 24時間 × 30日 = $374.4
配信サーバ t1.micro
- microインスタンスはじゃじゃ馬、smallインスタンスはお嬢様
- microインスタンスのオートスケールは調教が大変
- smallインスタンスは調教しやすいけどスペックは高くない上にmicroインスタンスの3倍↑のお値段
- reservedインスタンスにしたいけどauto scaleのせいで4台〜30台まで変動するからいくつ契約していいかわからない。
$0.049(EC2:$0.024+ELB:$0.025) × 24時間 × 30日 × (平均)10台 = $352.8
画像サーバ
980円 x 4台 = 3,920円
試算
管理:$230.4 + DB:$374.4 + 配信:$352.8 + sakura:\3,920 = $961.6 + \3,920
※その他1:route53,EIP,S3,EBS,転送量等がかかる
※その他2:sakuraが重いときは手動でDNS切り替えてcloud-frontを使用
なんかamazonフル活用事例みたいな構成になっちゃいました。
リザーブドインスタンス使ってないのもあって10万円/月越えるかも?
今後の予定
今は配信サーバからrsyncで管理サーバと同期してるんだけどS3経由したほうがネットワーク使用料が安いかも?
画像サーバは管理サーバ(AWS)→同期用(sakura)→画像サーバ(sakura)としたほうが安いかも?
管理サーバは
- t1.microを数台にしてELBで分散、reserved instanceする
- 当分はそれすら必要なくてspotインスタンス+EIPでt1.micro1台でもいけそう
- webサーバは32bit化してsmallインスタンス
とした方が安いかも?
最後に
コメントとかブックマークで反応あったら設定方法書いてみようかな?
ホームページに広告載せて稼ぎたい方、広告配信したい方はs025236@gmail.comまでご相談ください。