Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? Rails で非同期処理といえば、 Sidekiq, Resque, DelayedJob あたりが有名かと思います。 DelayedJob は RDS をジョブキューとして利用できる1ため、インフラの準備が不要で比較的ライトに導入できますが、数万件のジョブを登録しようと思うと RDS にかなりの負荷がかかりますし、Insert もそれほど早くないため、ジョブキューとしてはあまり適しているとは言えません。 Redis などのインメモリーデータベースを用いれば、RDS に負荷をかけず、Insert の高速化も見込めますが、万が一 Redi
Railsで非同期処理っていったらDelayedJobとかResqueとかSidekiqとかいろいろありますが、 今回はShoryukenにチャレンジしてみます。 ShoryukenはAWS SQSからジョブ取り出すワーカーを簡単に作っちゃおうっていうGemなんですが、 今回は本物のSQSは貧乏なので使わずにFake SQSというSQS(っぽいもの)をローカルで立てることができるGemを使ってローカルのみで動くShoryuken Workerを書いちゃいましょう。 #登場人物 AWS SQS: すごく安くキューが使えるニクいやつ AWS-SDK: RubyからAWSを簡単に操作できるニクいやつ Fake SQS: SQSっぽいものをローカルに立てられるニクいやつ Shoryuken: SQSからジョブを取り出すニクいやつ #導入 あらかじめ適当なRailsプロジェクトを作っておきます。 い
Stay Relevant and Grow Your Career in TechPremium ResultsPublish articles on SitePointDaily curated jobsLearning PathsDiscounts to dev toolsStart Free Trial7 Day Free Trial. Cancel Anytime. Key Takeaways Shoryuken, working in conjunction with Amazon’s SQS (Simple Queue Service), is an effective solution for processing queued jobs. It is built with Amazon SQS in mind, which is cost-effective and sc
みなさんさようなら、インフラ部の @h3_poteto です。 今日は昇竜拳の話をします。 ↑昇竜拳 クラウドワークス本体のアプリはRailsで作られているのですが、その中にちょいちょい非同期処理が載せられています。 メール送ったり、Elasticsearchとの同期処理だったり、重いスカウト処理だったり。 DelayedJobだと限界が見えてきた その非同期処理として、今までは、DelayedJobを使っていたんですが、ジョブが多くなり、キューが多くなり、ワーカーが多くなるにつれて、どんどん重くなってきました。 ActiveRecordを介してDBにキューを貯めるという方式がどうにもキツイ。 DelayedJobは本当に気軽に非同期処理が出来て良いのですが、キューにRDBを使うところがすごくイケてないです(だから気軽にできるんですけど)。 エンキューが多くなればそれだけ書き込みも、また処
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く