俺の報告

RoomClipを運営するエンジニアの日報(多分)です。

日報 #69 - DNSラウンドロビン

夜の道路を走っていると嫌でも目につくのがタクシーと運搬用トラックですね。
どんな時代でも「人・物を運ぶ」というのは凄いコストがかかるものだなぁと痛感します。
「デカイものを運ぶ」浪漫溢れるロジな話だけじゃなくて、
「細かいものを沢山運び続ける」日々の努力とオペレーションの話も、
今日の生活を支える根幹技術ですね。
どうやらITでも同じようです。
分かりやすく言ってしまえば、
「データ転送量が結構すごいのよ! 奥さん!」
「やぁね!」
って話です。
iPhone6 Plusという無邪気でハイスペックなシロモノの登場により、
より「大きな画像」の転送量は増加するでしょう。
回線はパンクしないかもしれないが、財布事情はそうもいきません。
とにかく、なんとかせにゃなりませんね。

ということで、 ちょっと前に僕の代わりに日報をお書きになられたN氏(星新一風)が、
鋭意CDN構築中でございます。
何もしてないのに事情聴取を受けた回数ランキング上位常連のN氏は、
夜は単なる飲んだくれのクセに、昼はとんでもなく出来るエンジニアなのです。
まだ完全に仕様をオープンには出来ませんが、
さくらの転送量無制限を何とか使って画像を上手くキャッシングするシステムでございます。
今日はちょっとその辺でハマったというか、
へぇと思ったことを。

Route53でDNSラウンドロビンをさせようと、適当に3つくらいIPぶら下げて、
本当にラウンドしてるのかを見ていたら、
どうやらしない様子。
ブラウザを再起動するとロビイングされた。
あぁどうやらブラウザがDNSキャッシュを持ってしまったんだなとの解釈。
これじゃぁ負荷分散としてはちょっと片手落ちかな、、、許容はできるけど、
と思って色々調べたらこんなサイトが。
http://tsuchinoko.dmmlabs.com/?p=220
どうやら最近のブラウザはfailover機能をもっているらしく、
複数IPをあてておけば、障害IPにあたったとしても勝手に別のIPに振りなおしてくれるそう。
本当かどうかテストが必要で、かつアプリからのアクセスだったら?という疑問もあるので、
追ってテストして報告しますが。
また、Aレコードの数についてもfacebookが1個でGoogle複数とか、
結構digってみるとおもしろな世界が見えてきますね。
もちろんDNSラウンドロビンしていても、それぞれのIPの配下にLBのようなものはあるのでしょうが、、、

ところで、簡単にLBできるサービスって無いんですかね。
GoogleのLBがイケているという話で色々探しましたが、
やっぱり当たり前ですがGoogleインスタンスに対してのバランシングしかできませんし。
まぁ当たり前ですけど…
凄い単純にバランシングだけしてくれるインスタンスみたいのってサクっててにはいりませんかね。。。

あ、りんご食べたくなってきた…これは寝るフラグだ。
じゃあね。