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
170
独自Worker管理が辛い
独自Worker管理が辛かったから代替案を提示してみた話
HaiTo
September 26, 2015
Tweet
Share
More Decks by HaiTo
See All by HaiTo
Form Object へ捧げる気持ち
haito
0
1.6k
管理画面再考
haito
0
240
ゾンビを倒してRuby.2.2に上げた話
haito
0
110
色々なレビューの話
haito
0
150
おしゃれっぽくターミナルでストリーミング再生をしたかった話
haito
0
130
dendai_lt_1011
haito
0
60
Other Decks in Programming
See All in Programming
ふつうの技術スタックでアート作品を作ってみる
akira888
1
500
地方に住むエンジニアの残酷な現実とキャリア論
ichimichi
5
1.5k
システム成長を止めない!本番無停止テーブル移行の全貌
sakawe_ee
1
160
PipeCDのプラグイン化で目指すところ
warashi
1
270
Is Xcode slowly dying out in 2025?
uetyo
1
260
Goで作る、開発・CI環境
sin392
0
230
Node-RED を(HTTP で)つなげる MCP サーバーを作ってみた
highu
0
120
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
440
すべてのコンテキストを、 ユーザー価値に変える
applism118
3
1.2k
RailsGirls IZUMO スポンサーLT
16bitidol
0
180
初学者でも今すぐできる、Claude Codeの生産性を10倍上げるTips
s4yuba
16
11k
生成AI時代のコンポーネントライブラリの作り方
touyou
1
180
Featured
See All Featured
Making the Leap to Tech Lead
cromwellryan
134
9.4k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
Music & Morning Musume
bryan
46
6.6k
Build The Right Thing And Hit Your Dates
maggiecrowley
36
2.8k
Raft: Consensus for Rubyists
vanstee
140
7k
Art, The Web, and Tiny UX
lynnandtonic
299
21k
YesSQL, Process and Tooling at Scale
rocio
173
14k
What's in a price? How to price your products and services
michaelherold
246
12k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Speed Design
sergeychernyshev
32
1k
The Invisible Side of Design
smashingmag
301
51k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
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