Suche senden
Hochladen
Riakmeetup2forupload
•
3 gefällt mir
•
2,613 views
Tatsuro Hisamori
Folgen
Diashow-Anzeige
Melden
Teilen
Diashow-Anzeige
Melden
Teilen
1 von 41
Jetzt herunterladen
Downloaden Sie, um offline zu lesen
Empfohlen
平均レスポンスタイム50msをPerlで捌く中規模サービスの実装/運用
平均レスポンスタイム50msをPerlで捌く中規模サービスの実装/運用
Tatsuro Hisamori
月間 250 億 imps 配信するために fluct が考えていること!
月間 250 億 imps 配信するために fluct が考えていること!
MasamichiIdeue
TypeScript製フレームワーク「Nest」のご紹介
TypeScript製フレームワーク「Nest」のご紹介
bitbank, Inc. Tokyo, Japan
Deploy TypeScript with CodePipeline in Fargate
Deploy TypeScript with CodePipeline in Fargate
bitbank, Inc. Tokyo, Japan
Inside pixiv's infrastructure〜application cluster side〜
Inside pixiv's infrastructure〜application cluster side〜
Tatsuhiko Kubo
LambdaでHello, World(2017/07/21 サーバレスアーキテクチャ勉強会)
LambdaでHello, World(2017/07/21 サーバレスアーキテクチャ勉強会)
Kousuke Ishikawa
Deploy TypeScript Application by CodePipeline
Deploy TypeScript Application by CodePipeline
bitbank, Inc. Tokyo, Japan
MQTTとAMQPと.NET
MQTTとAMQPと.NET
terurou
Empfohlen
平均レスポンスタイム50msをPerlで捌く中規模サービスの実装/運用
平均レスポンスタイム50msをPerlで捌く中規模サービスの実装/運用
Tatsuro Hisamori
月間 250 億 imps 配信するために fluct が考えていること!
月間 250 億 imps 配信するために fluct が考えていること!
MasamichiIdeue
TypeScript製フレームワーク「Nest」のご紹介
TypeScript製フレームワーク「Nest」のご紹介
bitbank, Inc. Tokyo, Japan
Deploy TypeScript with CodePipeline in Fargate
Deploy TypeScript with CodePipeline in Fargate
bitbank, Inc. Tokyo, Japan
Inside pixiv's infrastructure〜application cluster side〜
Inside pixiv's infrastructure〜application cluster side〜
Tatsuhiko Kubo
LambdaでHello, World(2017/07/21 サーバレスアーキテクチャ勉強会)
LambdaでHello, World(2017/07/21 サーバレスアーキテクチャ勉強会)
Kousuke Ishikawa
Deploy TypeScript Application by CodePipeline
Deploy TypeScript Application by CodePipeline
bitbank, Inc. Tokyo, Japan
MQTTとAMQPと.NET
MQTTとAMQPと.NET
terurou
ビットバンクにおける少人数で支えるインフラチームの戦略
ビットバンクにおける少人数で支えるインフラチームの戦略
bitbank, Inc. Tokyo, Japan
小規模チームで Type script と向き合う話
小規模チームで Type script と向き合う話
Tatsuya Yamamoto
Java Clientで入門する Apache Kafka #jjug_ccc #ccc_e2
Java Clientで入門する Apache Kafka #jjug_ccc #ccc_e2
Yahoo!デベロッパーネットワーク
Webブラウザ上で動作する帳票エンジンを作る話
Webブラウザ上で動作する帳票エンジンを作る話
terurou
Design pattern in presto source code
Design pattern in presto source code
Yahoo!デベロッパーネットワーク
Kafka・Storm・ZooKeeperの認証と認可について #kafkajp
Kafka・Storm・ZooKeeperの認証と認可について #kafkajp
Yahoo!デベロッパーネットワーク
Html5j 8
Html5j 8
Tatsuro Hisamori
YAPCEurope2014-myfinder
YAPCEurope2014-myfinder
Tatsuro Hisamori
YAPC::Europe 2014 に行ってきました
YAPC::Europe 2014 に行ってきました
Tatsuro Hisamori
今更聞けないストリーム処理のあれとかこれ
今更聞けないストリーム処理のあれとかこれ
Tatsuro Hisamori
CGI Perlでわかる!サーバレス
CGI Perlでわかる!サーバレス
Tatsuro Hisamori
My sql event_scheduler_casual_slideshare__
My sql event_scheduler_casual_slideshare__
Tatsuro Hisamori
JS開発環境を晒す。
JS開発環境を晒す。
Eiji Kuroda
プログラミング言語とは ~ 非エンジニアの方へ ~
プログラミング言語とは ~ 非エンジニアの方へ ~
Eiji Kuroda
はじめてのCouch db
はじめてのCouch db
Eiji Kuroda
HTMLElementの派生が作りたかった。
HTMLElementの派生が作りたかった。
Eiji Kuroda
新卒のみなさんへ 〜大志のいだき方〜
新卒のみなさんへ 〜大志のいだき方〜
Eiji Kuroda
Hotサービスの傾向
Hotサービスの傾向
Eiji Kuroda
いまどきのチームびるでぃんぐ
いまどきのチームびるでぃんぐ
Eiji Kuroda
SmartPhone と AdTechの世界
SmartPhone と AdTechの世界
Eiji Kuroda
First step of Performance Tuning
First step of Performance Tuning
risou
アドテク勉強会(第1回)
アドテク勉強会(第1回)
Noriaki UCHIYAMA
Weitere ähnliche Inhalte
Was ist angesagt?
ビットバンクにおける少人数で支えるインフラチームの戦略
ビットバンクにおける少人数で支えるインフラチームの戦略
bitbank, Inc. Tokyo, Japan
小規模チームで Type script と向き合う話
小規模チームで Type script と向き合う話
Tatsuya Yamamoto
Java Clientで入門する Apache Kafka #jjug_ccc #ccc_e2
Java Clientで入門する Apache Kafka #jjug_ccc #ccc_e2
Yahoo!デベロッパーネットワーク
Webブラウザ上で動作する帳票エンジンを作る話
Webブラウザ上で動作する帳票エンジンを作る話
terurou
Design pattern in presto source code
Design pattern in presto source code
Yahoo!デベロッパーネットワーク
Kafka・Storm・ZooKeeperの認証と認可について #kafkajp
Kafka・Storm・ZooKeeperの認証と認可について #kafkajp
Yahoo!デベロッパーネットワーク
Was ist angesagt?
(6)
ビットバンクにおける少人数で支えるインフラチームの戦略
ビットバンクにおける少人数で支えるインフラチームの戦略
小規模チームで Type script と向き合う話
小規模チームで Type script と向き合う話
Java Clientで入門する Apache Kafka #jjug_ccc #ccc_e2
Java Clientで入門する Apache Kafka #jjug_ccc #ccc_e2
Webブラウザ上で動作する帳票エンジンを作る話
Webブラウザ上で動作する帳票エンジンを作る話
Design pattern in presto source code
Design pattern in presto source code
Kafka・Storm・ZooKeeperの認証と認可について #kafkajp
Kafka・Storm・ZooKeeperの認証と認可について #kafkajp
Andere mochten auch
Html5j 8
Html5j 8
Tatsuro Hisamori
YAPCEurope2014-myfinder
YAPCEurope2014-myfinder
Tatsuro Hisamori
YAPC::Europe 2014 に行ってきました
YAPC::Europe 2014 に行ってきました
Tatsuro Hisamori
今更聞けないストリーム処理のあれとかこれ
今更聞けないストリーム処理のあれとかこれ
Tatsuro Hisamori
CGI Perlでわかる!サーバレス
CGI Perlでわかる!サーバレス
Tatsuro Hisamori
My sql event_scheduler_casual_slideshare__
My sql event_scheduler_casual_slideshare__
Tatsuro Hisamori
JS開発環境を晒す。
JS開発環境を晒す。
Eiji Kuroda
プログラミング言語とは ~ 非エンジニアの方へ ~
プログラミング言語とは ~ 非エンジニアの方へ ~
Eiji Kuroda
はじめてのCouch db
はじめてのCouch db
Eiji Kuroda
HTMLElementの派生が作りたかった。
HTMLElementの派生が作りたかった。
Eiji Kuroda
新卒のみなさんへ 〜大志のいだき方〜
新卒のみなさんへ 〜大志のいだき方〜
Eiji Kuroda
Hotサービスの傾向
Hotサービスの傾向
Eiji Kuroda
いまどきのチームびるでぃんぐ
いまどきのチームびるでぃんぐ
Eiji Kuroda
SmartPhone と AdTechの世界
SmartPhone と AdTechの世界
Eiji Kuroda
First step of Performance Tuning
First step of Performance Tuning
risou
アドテク勉強会(第1回)
アドテク勉強会(第1回)
Noriaki UCHIYAMA
Encoder-decoder 翻訳 (TISハンズオン資料)
Encoder-decoder 翻訳 (TISハンズオン資料)
Yusuke Oda
アドテク勉強会0819
アドテク勉強会0819
Hideya Kato
AdServerの仕組み
AdServerの仕組み
Eiji Kuroda
アドテク勉強会
アドテク勉強会
Shoho Kozawa
Andere mochten auch
(20)
Html5j 8
Html5j 8
YAPCEurope2014-myfinder
YAPCEurope2014-myfinder
YAPC::Europe 2014 に行ってきました
YAPC::Europe 2014 に行ってきました
今更聞けないストリーム処理のあれとかこれ
今更聞けないストリーム処理のあれとかこれ
CGI Perlでわかる!サーバレス
CGI Perlでわかる!サーバレス
My sql event_scheduler_casual_slideshare__
My sql event_scheduler_casual_slideshare__
JS開発環境を晒す。
JS開発環境を晒す。
プログラミング言語とは ~ 非エンジニアの方へ ~
プログラミング言語とは ~ 非エンジニアの方へ ~
はじめてのCouch db
はじめてのCouch db
HTMLElementの派生が作りたかった。
HTMLElementの派生が作りたかった。
新卒のみなさんへ 〜大志のいだき方〜
新卒のみなさんへ 〜大志のいだき方〜
Hotサービスの傾向
Hotサービスの傾向
いまどきのチームびるでぃんぐ
いまどきのチームびるでぃんぐ
SmartPhone と AdTechの世界
SmartPhone と AdTechの世界
First step of Performance Tuning
First step of Performance Tuning
アドテク勉強会(第1回)
アドテク勉強会(第1回)
Encoder-decoder 翻訳 (TISハンズオン資料)
Encoder-decoder 翻訳 (TISハンズオン資料)
アドテク勉強会0819
アドテク勉強会0819
AdServerの仕組み
AdServerの仕組み
アドテク勉強会
アドテク勉強会
Ähnlich wie Riakmeetup2forupload
本番環境で使える実行コード記録機能
本番環境で使える実行コード記録機能
mametter
【Unity道場京都スペシャル4】Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
【Unity道場京都スペシャル4】Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
UnityTechnologiesJapan002
Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
Yoshifumi Kawai
REST API、gRPC、GraphQL 触ってみた【2023年12月開催勉強会資料】
REST API、gRPC、GraphQL 触ってみた【2023年12月開催勉強会資料】
洵貴 佐川
JavaScript And Keywords
JavaScript And Keywords
uupaa
Vrodeo agenda 200930
Vrodeo agenda 200930
Junji Nishihara
Paa s and oss
Paa s and oss
Yusuke Ando
Riakを利用したパーソナライズ事例
Riakを利用したパーソナライズ事例
Yahoo!デベロッパーネットワーク
How to run P4 BMv2
How to run P4 BMv2
Kentaro Ebisawa
130329 04
130329 04
openrtm
20130329 rtm4
20130329 rtm4
openrtm
【17-E-2】Ruby PaaS「MOGOK」 ~ ソフトウェアエンジニアのためのクラウドサービス ~ 藤原秀一氏
【17-E-2】Ruby PaaS「MOGOK」 ~ ソフトウェアエンジニアのためのクラウドサービス ~ 藤原秀一氏
Developers Summit
vRodeo rancher 200702
vRodeo rancher 200702
Junji Nishihara
【初心者向け】API を使ってクラウドの管理を自動化しよう
【初心者向け】API を使ってクラウドの管理を自動化しよう
富士通クラウドテクノロジーズ株式会社
Webエンジニアがスタートダッシュをキメるためのローカル開発環境の勘所
Webエンジニアがスタートダッシュをキメるためのローカル開発環境の勘所
Y Watanabe
rdflintのvscode拡張の紹介とその実装方法
rdflintのvscode拡張の紹介とその実装方法
Takeshi Mikami
WebRTC SFU Mediasoup Sample update
WebRTC SFU Mediasoup Sample update
mganeko
fluentd を利用した大規模ウェブサービスのロギング
fluentd を利用した大規模ウェブサービスのロギング
Yuichi Tateno
クラウド概要 by Engine Yard
クラウド概要 by Engine Yard
Yu Kitazume
Open capi meetup20180409 (revised)
Open capi meetup20180409 (revised)
Yutaka Kawai
Ähnlich wie Riakmeetup2forupload
(20)
本番環境で使える実行コード記録機能
本番環境で使える実行コード記録機能
【Unity道場京都スペシャル4】Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
【Unity道場京都スペシャル4】Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
REST API、gRPC、GraphQL 触ってみた【2023年12月開催勉強会資料】
REST API、gRPC、GraphQL 触ってみた【2023年12月開催勉強会資料】
JavaScript And Keywords
JavaScript And Keywords
Vrodeo agenda 200930
Vrodeo agenda 200930
Paa s and oss
Paa s and oss
Riakを利用したパーソナライズ事例
Riakを利用したパーソナライズ事例
How to run P4 BMv2
How to run P4 BMv2
130329 04
130329 04
20130329 rtm4
20130329 rtm4
【17-E-2】Ruby PaaS「MOGOK」 ~ ソフトウェアエンジニアのためのクラウドサービス ~ 藤原秀一氏
【17-E-2】Ruby PaaS「MOGOK」 ~ ソフトウェアエンジニアのためのクラウドサービス ~ 藤原秀一氏
vRodeo rancher 200702
vRodeo rancher 200702
【初心者向け】API を使ってクラウドの管理を自動化しよう
【初心者向け】API を使ってクラウドの管理を自動化しよう
Webエンジニアがスタートダッシュをキメるためのローカル開発環境の勘所
Webエンジニアがスタートダッシュをキメるためのローカル開発環境の勘所
rdflintのvscode拡張の紹介とその実装方法
rdflintのvscode拡張の紹介とその実装方法
WebRTC SFU Mediasoup Sample update
WebRTC SFU Mediasoup Sample update
fluentd を利用した大規模ウェブサービスのロギング
fluentd を利用した大規模ウェブサービスのロギング
クラウド概要 by Engine Yard
クラウド概要 by Engine Yard
Open capi meetup20180409 (revised)
Open capi meetup20180409 (revised)
Riakmeetup2forupload
1.
2.
Riak and FreakOut Riak
をプロダクションに投下 [した¦している] 話 Riak Meetup Tokyo #2 7/10 19:00 ‒ 19:45
3.
© FreakOut Inc.,
4.
Riak Meetup Tokyo
#2 7/10 19:00 ‒ 19:45 FreakOut と RTB
5.
RTB 媒体 広告主
SSP DSP ROI 収益 最大化 AdEx (取引所) • SSP は「媒体側の収益最大化」が目的 • Supply Side Platform • DSP は「広告主の投資対効果(ROI)最大化」が目的 • Demand Side Platform • 2つの事業者間で、入札による取引が行われている • Real Time Bidding (RTB) RTB概略
6.
RTBエコシステムの特徴 媒体 広告主 AdEx
SSP DSP ROI 収益 最大化 Imp.売買 • FreakOut は広告主のネット広告における ROI 最適を 目指した DSP を展開
7.
Riak Meetup Tokyo
#2 7/10 19:00 ‒ 19:45 RTB の技術的課題
8.
広告表示までに 許された時間は 0.1秒 RTB and FreakOut
9.
RTB 媒体 広告主
SSP AdEx DSP • 0.1秒 = SSP がrequestを投げ、DSPがresponseを返し切るまで • RTB は TCP の RoundTripTime (RTT) を含んだ時間 • SSP は複数あり、多くの同時多発的リクエストが発生する • 同時多発的なリクエストを DSP は出来るだけ吟味する必要 RTB and FreakOut
10.
50ms or die.
11.
・レイテンシの軽減 ・多数の RTB 処理 RTB
and FreakOut
12.
安く 早く うまく 捌く必要がある RTB
and FreakOut
13.
1. FreakOut のシステム RTB
and FreakOut
14.
RTB は CPU
バウンド RTB and FreakOut
15.
FreakOut のサーバインフラ
16.
FreakOut のサーバインフラ
17.
FreakOut のサーバインフラ
18.
多コアを 安く 並べる FreakOut
のサーバインフラ
19.
一方 FreakOut のサーバインフラ
20.
入札判断に必要な データストアも重要 FreakOut のサーバインフラ
21.
[Tokyo¦Kyoto] FreakOut のサーバインフラ
22.
• 性能 •
[Tokyo|Kyoto] [Tyrant|Tycoon] は高速 • 50ms or die. を支えるためには速度が必要 • スケーラビリティ • クライアントサイドのアルゴリズム分散のため、スケールし にくい • 「10台じゃ足りない!! 11台目を追加しよう」が簡単にできない • 運用 • 通常運用では高負荷な状況でも実績がある • データ検索したりできない(踏み込んだデータ活用に難有) [Tokyo¦Kyoto] [Tyrant¦Tycoon] の課題 FreakOut のサーバインフラ
23.
Riak and FreakOut 2.
Riak and FreakOut
24.
• Perl •
アプリケーションはほぼ全て Perl • Perl <-‐> Riak のやり取りを受け持つモジュールが必要 • KVS • 既存の TT/KT へのアクセスは Cache::Memcached::Fast • Memcached クライアントを使っている • 運用 • メトリクス収集 -‐> CloudForecast • 監視 -‐> Nagios FreakOutのシステム Riak and FreakOut
25.
• Riak Client
for Perl • Net::Riak, Riak::Light, Data::Riak, AnyEvent::Riak • REST だけ or PurePerl の Protobuf サポート • 残念ながら遅い • Memcached クライアントとインターフェース互換がない • 既存の処理に組み入れにくい • ないなら作るしかない • Riak::PBC <-‐ Protobuf のオブジェクト • Riak::Lite::PBC <-‐ 実際に Riak とやり取りする client Riak and FreakOut Perl と Riak
26.
• その他のモジュールとの比較 •
https://gist.github.com/myfinder/5232845 • 結果 • 3000% over faster • 現状 Perl の世界では(たぶん)最速 • memcached like interface • Cache::Memcached::Fast 使ってる人には使いやすい Riak and FreakOut 作った module の性能
27.
• Test::riak •
https://github.com/myfinder/p5-‐test-‐riak • 動作 • テスト実行時に、空きポートを bind して Riak を起動 • テスト終了時に、Riak を終了してくれる • テスト重要 • 継続的に運用していくシステムにおいて”テストができる”こ とはマスト要件 Riak and FreakOut 単体テストモジュール
28.
運用構成 Riak and FreakOut
29.
• Engine Yard
方式 • アプリケーションと Riak の間に haproxy を配置 Riak and FreakOut 運用構成 app Riak Riak Riak Riak Riak Riak Riak Riak app haproxy app
30.
• 監視方法 •
stats で取得可能なデータを cloudforecast でグラフ化 • 死活監視は Nagios で port を叩く Riak and FreakOut 運用構成 スクショ参照
31.
3. 課題 Riak and
FreakOut
32.
RTB 媒体 広告主
SSP AdEx DSP 約0.1秒 おさらい Riak and FreakOut
33.
広告表示までに 許された時間は 0.1秒 Riak and FreakOut
34.
RTB処理に 許された時間は 約0.05秒 Riak and FreakOut
35.
50ms or die.
36.
Riak そのままでは (現状)性能不足 Riak and
FreakOut
37.
• Redirect がつらい
• haproxy で分散しているので、redirectが起こりやすい • スループットが上がらない • Set が詰まるとつらい • Set が詰まり始めると、worker の busy 率が上がる • 書き込みの非同期化が必要 • もう一歩踏み込んだ対策が必要 Riak and FreakOut 50ms or die.的な見地からの課題
38.
• キャッシュ層を設ける
• hot な key については memcached に任せる • データの origin を Riak に持つ • -‐> 実装済み Riak and FreakOut スループット向上のために app Riak Riak Riak Riak Riak Riak app app Riak Riak memd haproxy
39.
• hash から
partition を特定する • Riak の持っている partition 情報を RPC 経由で取得 • bucket / key から hash を取得して、収容 partition を特定 • @itawasa++ • partition に所属するノードに直接getしに行く • Riak::Lite::PBC でサポート予定 • -‐> 今後の課題 Riak and FreakOut スループット向上のために
40.
• 素のままでは50ms or
die.的に厳しめ • 構成の工夫が必要 • 但しスループットを上げる手はある • スケーラビリティの問題を克服できるメリッ トは大きい • サーバを足すだけ に運用を落とし込める ここまでのまとめ
Jetzt herunterladen