Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
fluentdによる大規模キュー設計
Search
Atsushi Takayama
June 01, 2015
Technology
9
5.1k
fluentdによる大規模キュー設計
「Fluentd Meetup 2015 夏」で発表した内容です。
Atsushi Takayama
June 01, 2015
Tweet
Share
More Decks by Atsushi Takayama
See All by Atsushi Takayama
最高の開発者体験の追求が開発生産性を改善し続ける文化を生み出した話
edvakf
3
1.3k
NeurIPS 2021 論文読み会: How Modular should Neural Module Networks Be for Systematic Generalization?
edvakf
0
180
8年物のJavaのシステムをKotlinに変えていく選択に至るまで
edvakf
2
1.1k
ピクシブ社内のImageFlux利用事例紹介
edvakf
2
2.9k
学びの文化を育む社内読書会のススメ
edvakf
0
290
フルCDNアーキテクチャでサービス設計した話
edvakf
5
4k
Goでバイナリを読む+α
edvakf
1
960
お前はこれまでに作ったAPIの数を覚えているのか?
edvakf
0
2.6k
「ふつうのRailsアプリケーション」についての考え方
edvakf
2
880
Other Decks in Technology
See All in Technology
衛星画像超解像化によって実現する2D, 3D空間情報の即時生成と“AI as a Service”/ Real-time generation spatial data enabled_by satellite image super-resolution
lehupa
0
160
AI時代こそ求められる設計力- AWSクラウドデザインパターン3選で信頼性と拡張性を高める-
kenichirokimura
3
310
そのWAFのブロック、どう活かす? サービスを守るための実践的多層防御と思考法 / WAF blocks defense decision
kaminashi
0
200
OAuthからOIDCへ ― 認可の仕組みが認証に拡張されるまで
yamatai1212
0
100
アイテムレビュー機能導入からの学びと改善
zozotech
PRO
0
150
【Kaigi on Rails 事後勉強会LT】MeはどうしてGirlsに? 私とRubyを繋いだRail(s)
joyfrommasara
0
260
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
930
プロポーザルのコツ ~ Kaigi on Rails 2025 初参加で3名の登壇を実現 ~
naro143
1
240
Node.js 2025: What's new and what's next
ruyadorno
0
250
Digitization部 紹介資料
sansan33
PRO
1
5.5k
Adminaで実現するISMS/SOC2運用の効率化 〜 アカウント管理編 〜
shonansurvivors
4
450
GoでもGUIアプリを作りたい!
kworkdev
PRO
0
140
Featured
See All Featured
Statistics for Hackers
jakevdp
799
220k
Balancing Empowerment & Direction
lara
4
690
The Straight Up "How To Draw Better" Workshop
denniskardys
238
140k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.6k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
For a Future-Friendly Web
brad_frost
180
9.9k
Reflections from 52 weeks, 52 projects
jeffersonlam
353
21k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
Navigating Team Friction
lara
190
15k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Building a Modern Day E-commerce SEO Strategy
aleyda
44
7.8k
Transcript
fluentdʹΑΔ େنΩϡʔઃܭ A large scale queue design with fluentd
ࣗݾհ • ߴࢁ Թ @edvakf • pixivͷອըࣄۀͷ։ൃऀ • ීஈॻ͍ͯΔͷScalaPHPɺͨ·ʹJSRubyGo •
࠷ۙϦʔυΤϯδχΞͱ͍͏ݞॻʹ • ձࣾͷٕज़બʹΛ࣋ͭ • ʮࣾͷΤϯδχΞ͕ͤʹಇͨ͘ΊʹʯΛߟ࣮͑ݱ͢Δۀ
ී௨ͷ ΣϒΞϓϦ+δϣϒΩϡʔ
Sidekiq
Resque Resque
MySQL Q4M PHP PHP PHP PHP Q4M batch
MongoDB PHP PHP PHP PHP Mongo batch
ྑ͍ • SidekiqResque൚༻δϣϒΩϡʔ • Rubyͷϝιου୯ҐͰ؆୯ʹδϣϒʹͰ͖Δ • ͘ΘΕ͍ͯΔ • ͠RedisMongoDBͳͲΛطʹ͍ͬͯΔͳΒ৽͍͠ ϛυϧΣΞΛಋೖ͠ͳͯ͘ྑ͍
͠ • 1ؒʹ10ສճͷδϣϒΛ࣮ߦ͠ͳ͍ͱ͍͚ͳ͔ͬͨΒ • ࣌ؒલͱ͔લͷঢ়ଶ·Ͱר͖ͬͯδϣϒΛ࣮ߦ ͠͞ͳ͍ͱ͍͚ͳ͔ͬͨΒ
ΞΫηεղੳ www.pixiv.net
࠷ॳʹߟ͑ͨҊ
MongoDB PHP PHP PHP PHP Mongo batch
ݒ೦ • MongoDB͕٧·ΔorམͪΔ • ͯ͢ͷPVͰॻ͖ࠐΉΑ͏ͳͱ͜ΖʹೖͰ͖Δ΄Ͳ ৴པͰ͖ͳ͍
ͦ͜Ͱfluentd
None
ߏ • ΞϓϦέʔγϣϯϩʔΧϧͷϑΝΠϧʹॻ͚ͩ͘ • fluentd͕ͦͬ͘Γͦͷ··సૹ͠ɺసૹઌͰϑΝΠϧ ʹॻ͖ࠐΉ • σʔϞϯͬΆ͍όονεΫϦϓτ͕ϑΝΠϧΛݹ͍ॱʹ ಡΜͰ͍ͬͯॲཧ͢Δ •
exec_filterʹ͢Δख͕͋ͬͨɺॾʑͷཧ༝͔ΒPHP ͰϑΝΠϧΛtailͯ͠ϙδγϣϯͷཧͳͲ͍ͯ͠Δ
རʢ̍ʣ • ϢʔβʔͷϦΫΤετΛॲཧ͍ͯ͠Δؒʹ௨৴͕ൃੜ͠ ͳ͍ • ϑΝΠϧͷॻ͖ࠐΈγʔέϯγϟϧͳͷͰઈରʹ٧ ·Βͳ͍ • సૹઌಉ༷ •
ϑΝΠϧγεςϜҰ൪ރΕͯΔετϨʔδ
རʢ̎ʣ • ॲཧͨ͠ޙϩά͕Δ • ԿΒ͔ͷΤϥʔͰόον͕͏·࣮͘ߦͰ͖͍ͯͳ͔ͬ ͨͱͯ͠ɺݩʹͬͯΓͤΔ • ࣦഊ͢Δͱઌʹਐ·ࣦͣഊ͠ଓ͚ΔΑ͏ʹͳ͍ͬͯͯɺ ରࡦͯ͠σϓϩΠ͢ΔͱਐΜͰ͘ΕΔ
རʢ̏ʣ • సૹઌΛΞΫςΟϒɾελϯόΠߏʹͰ͖Δ • ྆ํಉ͡ߏͰಉ͡όον͕ಈ͍͍ͯΔ
• “When an active node goes down, the standby node
is promoted to an active node.” • http://docs.fluentd.org/articles/out_forward#standby <server> name host1 host 192.168.xx.1 standby </server> <server> name host2 host 192.168.xx.2 </server>
·ͱΊ • fluentdͱϑΝΠϧγεςϜΛͬͯ৴པੑͷߴ͍େن ΩϡʔγεςϜΛߏஙͨ͠ • ϑΝΠϧʹγʔέϯγϟϧʹॻ͖ࠐΉ • 2Ҏ্ී௨ʹಈ͍͍ͯͯɺಉ͡Ͱ·ͩ·ͩϩάΛ ૹͬͯͳͦ͞͏ •
ϑΝΠϧ͕͍ͬͯΔ҆৺ײ