ScalaでDSP作ってみた
Upcoming SlideShare
Loading in...5
×
 

ScalaでDSP作ってみた

on

  • 617 views

 

Statistics

Views

Total Views
617
Views on SlideShare
557
Embed Views
60

Actions

Likes
2
Downloads
3
Comments
0

3 Embeds 60

http://localhost 31
http://numa08.github.io 28
http://s.deeeki.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    ScalaでDSP作ってみた ScalaでDSP作ってみた Presentation Transcript

    • SCALAで DSP作ってみた 2013-12-07 Jiro Hiraiwa
    • トピックス 1. 自己紹介 2. DSPとは? 3. システム構成 4. 感想や課題とか
    • 自己紹介 なまえ:平岩 二郎 @hiraiva Scalaとかで広告システムを作る Demand Side Science という小さな会社の代表やってます 今は Scala と JavaScript がメイン 前はスマホアプリとかも書いていた
    • DSPを作ったときの立場 要件調整、設計、実装などを担当 プロダクトマネージャーが近いが何でもやります 私自身のScalaの技術レベルは中の中(だと思いたい)
    • DSPとは Demand Side Platformの略 広告主(Demand Side)の為のシステム RTB(Real Time Bidding)によって広告枠の買い付けを行う 高トラフィック処理(数千~数万QPS)
    • システム概要 - フロント BID SERVER SSPとRTB取引を行うサーバ nginx + fingale + scala2.10 BEACON SERVER impやclickのトラッキングビーコンを受けとるサーバ nginx + play2.0 + scala2.10
    • システム概要 - コンソール CONSOLE SERVER 広告出稿者が配信設定を行う管理コンソールを提供する nginx + play2.0 + scala2.10 + backbone.js scalaはWebAPIのみ。UIは全てjs
    • システム構成 - バックエンド REDIS ユニークブラウザ毎のデータ HBASE 配信ログデータ MYSQL 配信設定。実際には各サーバにあるキャッシュを使う
    • SCALAを使って良かったこと それなりに早く開発できた 複雑な処理を簡潔に記述できた 型安全を活かせると改修がすごく楽 コンソールでのscalaとjsの使い分けは良かった 社内的に技術に対するモチベーションを喚起できた
    • SCALAを使って困ったこと コンパイルおそい(特にマクロを含む場合っぽい) 技術レベルのgapにより書き方がバラバラになる 型安全にするには実装者が気をつける スレッドセーフにするには実装者が気をつける Tuple 23問題は画面系でぶつかりやすい
    • その他感想など 良くも悪くもJavaの知識が前提 製品環境のチューニングという意味ではJVMの知識が重要 並列コレクションやActorも活用したい やっぱりCakeパターンは複雑すぎる気がする
    • ご清聴ありがとう ございました