【超満員】クックパッド導入事例 Dockerでスケールするジョブキューシステム【登壇者混乱】 #RubyKaigi #RubyKaigiB
Scalable job queue system built with Docker
@k0kubun
http://rubykaigi.org/2016/presentations/k0kubun.html
"While job queue system has been indispensable to execute a task asynchronously for a long time, we have some problems in typical job queue systems built with Ruby. Have you ever suffered from job queue system's availability, scalability or operation cost? Don't you want to implement a job with another language which is suitable for the job?
続きを読む
黒曜@Leaner Technologies
@kokuyouwind
一方、kuroko2という自家製のバッチシステムがあり、これが柔軟なタスク設定ができたりdockerで起動できたりと非常に便利だったため、本来ジョブキューを使うべきなのにバッチにしてしまうエンジニアが多かった。 #rubykaigi #rubykaigiB
2016-09-08 17:28:29
黒曜@Leaner Technologies
@kokuyouwind
ジョブキューシステムの需要が高まったこともあり、kuroko2の柔軟さを備えたジョブキューシステムが欲しい、というのがモチベーションになった。 #rubykaigi #rubykaigiB
2016-09-08 17:29:39
Je mange, donc je suis
@ryotakameoka
「ちょっと、ちょっと待ってください、ちょっと落ち着きます」と言って突如落ち着き始める k0kubun さん #rubykaigiB
2016-09-08 17:30:54
黒曜@Leaner Technologies
@kokuyouwind
インフラ上の要請として、ジョブキューを一元管理できスケールする、という条件があった。またジョブが簡単にデプロイできるようにしておきたく、アプリケーションのデプロイがdockerに乗っていたので揃えたかった。 #rubykaigi #rubykaigiB
2016-09-08 17:31:36
黒曜@Leaner Technologies
@kokuyouwind
データストアにはAmazon SQSを使っている。安定性やパフォーマンスなどで選択しているが、欠点としてメッセージがat-least-onceであること、最大遅延が900sあることに気をつける必要がある。 #rubykaigi #rubykaigiB
2016-09-08 17:34:43