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
独自Worker管理が辛い
Search
HaiTo
September 26, 2015
Programming
0
200
独自Worker管理が辛い
独自Worker管理が辛かったから代替案を提示してみた話
HaiTo
September 26, 2015
Tweet
Share
More Decks by HaiTo
See All by HaiTo
Form Object へ捧げる気持ち
haito
0
1.7k
管理画面再考
haito
0
260
ゾンビを倒してRuby.2.2に上げた話
haito
0
110
色々なレビューの話
haito
0
160
おしゃれっぽくターミナルでストリーミング再生をしたかった話
haito
0
130
dendai_lt_1011
haito
0
61
Other Decks in Programming
See All in Programming
受け入れテスト駆動開発(ATDD)×AI駆動開発 AI時代のATDDの取り組み方を考える
kztakasaki
2
560
AHC061解説
shun_pi
0
360
Agent Skills Workshop - AIへの頼み方を仕組み化する
gotalab555
15
8.5k
文字コードの話
qnighy
44
17k
米国のサイバーセキュリティタイムラインと見る Goの暗号パッケージの進化
tomtwinkle
2
550
grapheme_strrev関数が採択されました(あと雑感)
youkidearitai
PRO
1
210
RubyとGoでゼロから作る証券システム: 高信頼性が求められるシステムのコードの外側にある設計と運用のリアル
free_world21
0
260
オブザーバビリティ駆動開発って実際どうなの?
yohfee
3
820
Cyrius ーLinux非依存にコンテナをネイティブ実行する専用OSー
n4mlz
0
130
Claude Code Skill入門
mayahoney
0
230
nuget-server - あなたが必要だったNuGetサーバー
kekyo
PRO
0
230
ポーリング処理廃止によるイベント駆動アーキテクチャへの移行
seitarof
3
1k
Featured
See All Featured
Git: the NoSQL Database
bkeepers
PRO
432
66k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
110
HDC tutorial
michielstock
1
530
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
100
Code Reviewing Like a Champion
maltzj
528
40k
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.4k
The Spectacular Lies of Maps
axbom
PRO
1
620
The Limits of Empathy - UXLibs8
cassininazir
1
250
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
300
Transcript
RundeckͱDaemon-Rails HaiTo
࠷ۙ
SansanͰΤϯδχΞͯ͠Δ HaiToͰ͢
ͬͯษڧձͰൃදͩͨ͠͠ͷͰ ޙʹҾ͚ͳ͘ͳͬͨϚϯ ※TwitterͷγϞωλతͳҙຯͰ
͍͍ͩͨ͜Μͳײ͡
ࠓಈ͘σϞ͕͋Γ·͢ʂ
None
࠷ۙͷΈ • WorkerͱBatchΛཧͯ͠ΔγεςϜ͕ͳ͔ͳ͔͍͠ ߏʹͳͬͯΔ • Script͕͚ͬ͜͏ͳՕॴʹඞཁͩͬͨΓɺ͔ͦ͠ΕΛ PRग़ͯ͠Ϛʔδͯ͠Deployͯ͠…… • 1WorkerՃ͢Δͷʹ࠷3ՕॴʹPRΛग़͢ඞཁ͕͋ Δɻ(ରRepo,BatchExecutor,GeesManagement)
None
Կނͳͷ͔ • RailsͰʮWorkerϓϩηεʯΛཧ͢ΔϕετϓϥΫ ςΟεͷܽ(SidekiqʹJobಥͬࠐΊʔʂͱ͔͔ͬΓ) • ͜͜·ͰWorkerɺBatch͕૿͑Δ͜ͱΛఆ͍ͯ͠ͳ ͔ͬͨͷ͔ɺύϥϨϧʹBatch,WorkerΛىಈఀࢭ͢Δ͜ ͱͷग़དྷͳ͍Έ
ͰͲ͏͢ΕΑ͍͔ • ͪͬͱྑͦ͞͏ͳܗͰWorkerɺBatchͷىಈͱఀࢭ͕ ग़དྷΔ༷ʹͳΔͱྑͦ͞͏ɻ • ฒྻʹWorker,Batchͷىಈͱఀ(ry • WorkerΛՃͨ͠Β͋ͱWebView͔ΒWorker,Batch ͷى(ry
ඞཁͳϑΥʔε • ίϚϯυΛୟ͍ͨΒ͙͢ʹ্ཱ͕ͪΒͳͯ͘(͙͢ʹ ͞Εͳͯ͘)ɺͦͷࢮ׆͕ࢹͰ͖Δ(μʔΫαΠυ) • ผͷϓϩηε(εϨου)ʹअຐ͞ΕΔ͜ͱແ͘ɺίϚϯ υΛୟ͘͜ͱ͕ग़དྷΔ(ϥΠταΠυ)
ͳΜ͔͍͢͝Worker ͳΜ͔͍͢͝Worker ͳΜ͔͍͢͝Worker ͳΜ͔͍͢͝Worker kill kill kill kill ͋ͨ͠ΌࢮΜ͡·ͬͯ͞ ͋ͨ͠ΌࢮΜ͡·ͬͯ͞
͋ͨ͠ΌࢮΜ͡·ͬͯ͞ ͋ͨ͠Όࢮ
ͳΜ͔ͩߦ͚ͦ͏ͳؾ͕͢Δʙ
None
Rundeck • OSSͷδϣϒཧιϑτΣΞ • ϦονͳWebView͕͋Δɻ͋ͱJVMͰಈ͘ɻαΠίʔ͔ • ΘΓ͔͠Deployͱ͔ͷʮδϣϒϫʔΫϑϩʔʯཧΛߦ ͏ͨΊͷπʔϧͬΆ͍
ͳΜ͔ͩߦ͚ͦ͏ͳؾ͕͢Δʙ
None
daemon-rails
daemon-rails • lib/daemons/awesome_worker.rb • bundle exec rake daemon:awesome_worker:start • bundle
exec rake daemon:awesome_worker:stop • ͳΜ͔ͩߦ͚ͦ͏ͳؾ͕͢Δ(n)
Demo
None
None
՝ • ࠓͷWorkerͷ࣮Λશ෦࡞Γͳ͓͢ඞཁ͕͋Δ • ͑ͬ • :tori_e: • ͑ʁʁʁ
None
None
None