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
280
フル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
extension 現場で使えるXcodeショートカット一覧
ktombow
0
200
KAGのLT会 #8 - 東京リージョンでGAしたAmazon Q in QuickSightを使って、報告用の資料を作ってみた
0air
0
200
いま注目しているデータエンジニアリングの論点
ikkimiyazaki
0
580
Trust as Infrastructure
bcantrill
0
290
非エンジニアのあなたもできる&もうやってる!コンテキストエンジニアリング
findy_eventslides
3
890
SoccerNet GSRの紹介と技術応用:選手視点映像を提供するサッカー作戦盤ツール
mixi_engineers
PRO
1
160
PLaMo2シリーズのvLLM実装 / PFN LLM セミナー
pfn
PRO
2
940
Railsアプリケーション開発者のためのブックガイド
takahashim
14
6k
AI Agentと MCP Serverで実現する iOSアプリの 自動テスト作成の効率化
spiderplus_cb
0
460
Pure Goで体験するWasmの未来
askua
1
170
AIが書いたコードをAIが検証する!自律的なモバイルアプリ開発の実現
henteko
1
330
後進育成のしくじり〜任せるスキルとリーダーシップの両立〜
matsu0228
6
2k
Featured
See All Featured
Designing for humans not robots
tammielis
254
25k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
890
BBQ
matthewcrist
89
9.8k
Java REST API Framework Comparison - PWX 2021
mraible
33
8.8k
Making the Leap to Tech Lead
cromwellryan
135
9.5k
Building a Modern Day E-commerce SEO Strategy
aleyda
43
7.7k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
19
1.2k
4 Signs Your Business is Dying
shpigford
185
22k
Code Reviewing Like a Champion
maltzj
525
40k
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Ҏ্ී௨ʹಈ͍͍ͯͯɺಉ͡Ͱ·ͩ·ͩϩάΛ ૹͬͯͳͦ͞͏ •
ϑΝΠϧ͕͍ͬͯΔ҆৺ײ