go言語で作るアドサーバー4 DSP的な何か

インプレッション広告、クリック広告、アフィリエイト広告のecpmは基本的に先に計算したものをテーブルに入れておけるが、DSP業者に広告枠を取りに行く場合、リアルタイムでのecpmの取得となる。

簡単に実装するのであれば、http clientでパラメーターを送って広告枠を取得する
WEB APIを叩くという認識で間違いないと思う。

ただし、広告配信という性質上、広告枠の取得に掛かるレスポンスタイムはかなりシビアで、取得に時間が掛かるようであれば接続を切らなければならないほど。なのでhttpのセッションをつなげっぱなしにしたり、httpの多重化をしたりといった工夫が必要になってくる。これを例えばphpで実現しようとすると、かなり面倒なことになって来るが、goだとプロセスを共有できるのでわりかしやりやすいかと思う。

例えば、複数のDSPに向けて同時にhttp postして、結果待ちするのとかはphpで実装するのはちょっとめんどうである。一応できなくはないが...。あとはセッションが終了ごとに初期化されてしまうため、curlでkeepaliveで接続していても、セッション終了と共にkeepaliveも接続が解除されてしまう。

go言語の場合は、単純にgo routineを使えばいい