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
DaemonKit @ RubyKaigi 2009
Search
Kenneth Kalmer
July 18, 2009
Technology
0
18
DaemonKit @ RubyKaigi 2009
My RubyKaigi 2009 lightning talk on daemon-kit
Kenneth Kalmer
July 18, 2009
Tweet
Share
More Decks by Kenneth Kalmer
See All by Kenneth Kalmer
Reframing Single Page Apps for the Future
kennethkalmer
1
100
Make Your CI Server a Productive Team Member
kennethkalmer
2
390
Make it a team mate - Getting more from your CI (Ruby edition)
kennethkalmer
1
52
Getting more from your CI - Lightning Version
kennethkalmer
0
36
Broken Dreams and Shattered Promises
kennethkalmer
0
250
Why Ruby?
kennethkalmer
0
77
Unleashing the Rails Asset Pipeline
kennethkalmer
0
55
Reusing your frontend JS on the server with V8/Rhino
kennethkalmer
2
5.6k
Ruby - Behind the Scenes
kennethkalmer
0
26
Other Decks in Technology
See All in Technology
スマートファクトリーの第一歩 〜AWSマネージドサービスで 実現する予知保全と生成AI活用まで
ganota
1
210
これでもう迷わない!Jetpack Composeの書き方実践ガイド
zozotech
PRO
0
320
企業の生成AIガバナンスにおけるエージェントとセキュリティ
lycorptech_jp
PRO
2
160
250905 大吉祥寺.pm 2025 前夜祭 「プログラミングに出会って20年、『今』が1番楽しい」
msykd
PRO
1
700
生成AI時代のデータ基盤設計〜ペースレイヤリングで実現する高速開発と持続性〜 / Levtech Meetup_Session_2
sansan_randd
1
150
Autonomous Database - Dedicated 技術詳細 / adb-d_technical_detail_jp
oracle4engineer
PRO
4
10k
Generative AI Japan 第一回生成AI実践研究会「AI駆動開発の現在地──ブレイクスルーの鍵を握るのはデータ領域」
shisyu_gaku
0
140
下手な強制、ダメ!絶対! 「ガードレール」を「檻」にさせない"ガバナンス"の取り方とは?
tsukaman
2
420
Webブラウザ向け動画配信プレイヤーの 大規模リプレイスから得た知見と学び
yud0uhu
0
230
今!ソフトウェアエンジニアがハードウェアに手を出すには
mackee
11
4.7k
Firestore → Spanner 移行 を成功させた段階的移行プロセス
athug
1
450
20250903_1つのAWSアカウントに複数システムがある環境におけるアクセス制御をABACで実現.pdf
yhana
3
540
Featured
See All Featured
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
188
55k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
A designer walks into a library…
pauljervisheath
207
24k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
126
53k
The Straight Up "How To Draw Better" Workshop
denniskardys
236
140k
Speed Design
sergeychernyshev
32
1.1k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.1k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.5k
A Modern Web Designer's Workflow
chriscoyier
696
190k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
For a Future-Friendly Web
brad_frost
180
9.9k
Transcript
Facing your daemons
Ruby daemons are a PITA Tired of brittle daemons
? Tired of running blind ? Tired of setting up monitoring ? Tired of worrying about logging ? Tired of missing pid files ?
daemonkit http://github.com/kennethkalmer/daemon-kit Kenneth Kalmer @kennethkalmer http://opensourcery.co.za
daemonkit ? Opionated Framework for Ruby daemons Keep
things DRY Generators to help make things simple Rake tasks to help keep things simple
Multiple environments Development Be noisy, break early, break
hard Testing Staging Production Be quiet, stay alive, recover easily
Don't worry about pid files Managed for you
Infered or explicit files Great for controlling clusters Handles stale pid files
Don't worry about logging Multiple levels Syslog support
Log rotation friendly (HUP)
Don't worry about configuration Simple YAML config files
Ondemand hashes Environmentaware configuration Defaults and environment specific overrides
Don't worry about monitoring Generate monit/god configuration files via
rake
Don't worry about silent death Safety nets for threads
Hoptoad integration Exception emails Change logging levels with SIGUSR1/SIGUSER2
Generators accelarate AMQP consumer Nanite agent XMPP
bot Cron daemon Ruote remote participants $ daemon_kit mydaemon i amqp
Easy deployment Custom capistrano recipe tailored for daemons
Awaiting vlad contribution :) $ daemon_kit mydaemon d capistrano $ ./script/generate deploy_capistrano
Suitable for networking EventMachine is a dependency AMQP
uses EM Scheduler uses EM XMPP to use EM (under construction)
Looking forward RobustThread support Bundled thread/fibre pool implementation
Sys V Init script generation Bleakhouse support Privilege dropping & chroot'ing
Arigato gozaimasu ! http://github.com/kennethkalmer/daemonkit http://kit.rubyforge.org/daemon/rdoc #daemonkit on
Freenode http://opensourcery.co.za @kennethkalmer