並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 44件

新着順 人気順

Sidekiqの検索結果1 - 40 件 / 44件

Sidekiqに関するエントリは44件あります。 railsrubysidekiq などが関連タグです。 人気エントリには 『APIに利用制限をかけるとしたらどういうやりかたがあるのか - おもしろwebサービス開発日記』などがあります。
  • APIに利用制限をかけるとしたらどういうやりかたがあるのか - おもしろwebサービス開発日記

    この記事はSmartHR Advent Calendar 2020 11日目の記事です。 僕のお手伝いしているSmartHRでは、毎週バックエンドエンジニアが集まり、技術的なトピックについて共有、相談しあうミーティングを開催しています。そのミーティングでは僕がTipsなどを共有するコーナーが常設されています*1。 このエントリでは、そのコーナーで共有した内容をひとつ紹介します。 APIに制限をかける方法について APIを外部に提供するとき、一定の制限をかけてユーザがAPIを乱用するのを防ぐことはよくあることではないでしょうか。素直に考えると「1時間に5000回までAPIを実行できる」のようなやり方を思いつきますね。GitHubのAPIもそのやり方ですし、SmartHRのAPIも同様です。 じゃあそれでいいのでは。となるかもしれませんが少し待ってください。いろんなクライアントがAPIを大量に

      APIに利用制限をかけるとしたらどういうやりかたがあるのか - おもしろwebサービス開発日記
    • Railsでpumaやsidekiqのスレッド数とコネクションプールの数ってどうやって決めるんですか | 働くひとと組織の健康を創る iCARE

      この記事はiCARE Dev Advent Calendar 2022 第1レーン24日目の記事です。 Railsの基本原則の一つに「メニューはおまかせ」があり、デフォルトで設定を良い感じにしてくれています。しかし、本当に自分のユースケースでも問題ない設定だと自信を持って言うためには、なぜこの設定になっているのかの背景知識が必要になります。例えばrails newをするとpumaのスレッド数はデフォルト5、データベースのコネクションプール数も5になっています。これは自分のユースケースで適切な値なのでしょうか?どういうときにいくつに設定するのが正しいのでしょうか? pumaのスレッド数をどうやって決めるのか pumaはRailsのデフォルトのアプリケーションサーバであり、複数プロセス、複数スレッドで動くアプリケーションサーバです。この記事を執筆している時点で最も利用率の高いアプリケーションサ

        Railsでpumaやsidekiqのスレッド数とコネクションプールの数ってどうやって決めるんですか | 働くひとと組織の健康を創る iCARE
      • Ruby on Rails on Lambda

        銀座Rails #35 (https://ginza-rails.connpass.com/event/216491/) AWS Lambdaのコンテナイメージサポートを利用してRailsのコードを動かす方法とそのユースケースについて。

          Ruby on Rails on Lambda
        • Rails: SidekiqはActive Jobを経由せずに直接使おう(翻訳)|TechRacho by BPS株式会社

          概要 原著者の許諾を得て翻訳・公開いたします。 英語記事: Use Sidekiq Directly, Not Through Active Job - Andy Croll 原文公開日: 2021/10/04 著者: Andy Croll 参考: 週刊Railsウォッチ20211018: SidekiqをActive Job経由ではなく直接使う 参考: Active Job の基礎 - Railsガイド Webアプリケーションを構築する場合は、ユーザーごとのレスポンスに要する時間を最小限に留めるべきです。Webサイトが速ければ速いほど、その分ユーザーも幸せになれます。 そのための方法の1つは、重くなる可能性のある処理(実行に長時間かかる、パラレル化可能な処理)を、イミディエイトなWebリクエストの外で非同期実行することです。メール送信、計画的なクリーンアップ、長時間かかる計算、外部API

            Rails: SidekiqはActive Jobを経由せずに直接使おう(翻訳)|TechRacho by BPS株式会社
          • Sidekiq to Kafka ストリームベースのmicro services

            Kaigi On Rails 2020 発表資料。 ActiveJob(sidekiq)の限界とKafkaを採用してサービス分割する上での戦い方の例について紹介する。

              Sidekiq to Kafka ストリームベースのmicro services
            • 1秒動画のつくり方 ― 「家族アルバム みてね」における動画エンコードパイプラインとその最適化事例 | gihyo.jp

              なお上記の「大量配信」とは、「⁠1~3月分の四季版を4月15日から配信開始し、1週間で全家族に配信完了する」などのように、「⁠新しい期間の1秒動画をはじめて配信してから、その時点で条件を満たす全家族への配信が完了するまで」の期間を指します。1秒動画の生成・配信の大部分はこの大量配信期間に行っていることから、これを「大量配信」と呼んでいます。 生成⁠・配信の流れ 1秒動画の生成・配信は、図1のとおり(1)対象家族抽出、(2)素材選択、(3)動画エンコード、(4)配信、の4段階で実現しています。以下ではその詳細を説明します。 図1 1秒動画の生成・配信の流れ (1)対象家族抽出 1秒動画の生成・配信処理は、基本的にはバッチ処理として毎日実行しています。そのはじめに行うのは、「⁠その日、どの家族に、どのバージョン・どの期間の1秒動画を生成・配信するか」を取り出す対象家族抽出です。この処理は四季版

                1秒動画のつくり方 ― 「家族アルバム みてね」における動画エンコードパイプラインとその最適化事例 | gihyo.jp
              • Sidekiq のワーカーノードをオートスケールさせてEC2の稼働コストを60%削減させるまで - Qiita

                「Sidekiq のワーカーノードが稼働する EC2 インスタンスをオートスケールしたい」という依頼人の願いを、匠が叶えます。 このストーリーの登場人物は以下の2人です。 依頼人 = アプリケーションエンジニア or マネジメント層(適宜文脈によって読み替えてください) 匠 = インフラエンジニア Before まずは依頼人が抱えるお悩みについて話を聞いてみることにします。 インフラ構成 依頼人のサーバ構成は、 Sidekiq では標準的な構成を採用していました(図1, 2)。 Web ノードでタスクを Redis 登録し、 Worker ノードで Redis からタスクを取り出し実行します。 Web ノードは API として外部に公開されているほか、 Sidekiq の GUI として利用しています。 各ノードは AutoScalingGroup を構成していますが、台数固定で稼働してい

                  Sidekiq のワーカーノードをオートスケールさせてEC2の稼働コストを60%削減させるまで - Qiita
                • Rails 6の新しいデフォルト設定と安全な移行方法を詳しく解説(翻訳)|TechRacho by BPS株式会社

                  概要 原著者の許諾を得て翻訳・公開いたします。 英語記事: Rails 6.0 new framework defaults: what they do and how to safely uncomment them 原文公開日: 2019/10/19 著者: Dylan Reile -- ES6やSQL経験豊富な情熱的Rubyist 本記事では、rails app:updateで生成されるnew_framework_defaults_6_0.rbの9つのデフォルトフラグについてひととおり解説します。最後までお読みいただければ、自信を持ってこのファイルを削除し、application.rbにload_defaults 6.0と堂々と書けるようになります。 本記事ではRails 5.2のデフォルト設定を使っているアプリを前提としています。これについては、自分のアプリのapplication

                    Rails 6の新しいデフォルト設定と安全な移行方法を詳しく解説(翻訳)|TechRacho by BPS株式会社
                  • バックグラウンドで実行するバッチ処理の改善のためSidekiq Enterpriseを導入しました🥳 - メドピア開発者ブログ

                    こんにちは、エンジニアの森田です。 MedPeerでは、バックグラウンドで非同期に処理を実行させる方法としてSidekiqを使っておりましたが、今回Sidekiq Enterprise(Proを含む)を導入しました。 https://sidekiq.org/products/enterprise.html 今回はSidekiq Enterpriseを導入するにあたって解決したかった課題と実際の導入方法、導入後の活用事例をを紹介できればと思います! Sidekiq Enterpriseとは? Sidekiq Enterpriseとは、その名の通りエンタープライズ向けの機能拡張が行われた有料版のSidekiqです。(Sidekiq Enterpriseとは別にSidekiq Proもありますが、Sidekiq Enterpriseを導入するとSidekiq Proの機能も使用出来るようになりま

                      バックグラウンドで実行するバッチ処理の改善のためSidekiq Enterpriseを導入しました🥳 - メドピア開発者ブログ
                    • IT x 社会貢献 ~レアジョブ・メドピア 開発事例公開~ - メドピア開発者ブログ

                      こんにちは。サーバーサイドサウナーの川井田(@tamamushi_2)です 先日、レアジョブさんと勉強会を開催し、同期の櫻井(@shibadog39)と登壇してきたので、資料と一言コメントをお送りしますm(_ _)m medpeer.connpass.com 資料・コメント 川井田 私は、Sidekiq Enterpriseの導入事例として、メール配信JOBの改善を例にだして、Enterprise + Pro で使える機能紹介をメインに、発表しました! 機能紹介に力を入れすぎて、何を言いたいのかわからない資料になっていますが、この資料をみてSidekiq Enterprise導入したよって声が聞こえてきたら、嬉しいです。 speakerdeck.com 櫻井 こんにちは。メドピア筋トレ部、幽霊部員の櫻井です。 自分は、WebAPI開発におけるスキーマ駆動開発をテーマにLT登壇させていただき

                        IT x 社会貢献 ~レアジョブ・メドピア 開発事例公開~ - メドピア開発者ブログ
                      • Kaigi On Rails

                        Cheating the UX When There Is Nothing More to Optimize - PixelPioneers

                          Kaigi On Rails
                        • How does Sidekiq really work?

                          Sidekiq is one of the most ubiquitous1 Ruby background job processors out there. To anybody who has worked with Ruby on and off Rails, it needs no introduction. Sidekiq has a 10+ year track record of being an efficient, battle-tested and simple-to-use solution for offloading the execution of application logic into the background. It utilizes a threaded model for job processing, uses Redis as a bac

                          • Rails: SidekiqからSolid Queueに移行したときの方法と注意点(翻訳)|TechRacho by BPS株式会社

                            概要 元サイトの許諾を得て翻訳・公開いたします。 英語記事: How we migrated from Sidekiq to Solid Queue - BigBinary Blog 原文公開日: 2024/03/05 原著者: Chirag Shah 日本語タイトルは内容に即したものにしました。 私たちBigBinaryは、neetoでさまざまなプロダクトを構築しています。現在22のプロダクトを開発中で、それらはいずれもSidekiqを利用しています。Solid Queueが公開された後で、私たちのneetoFormで使われているSidekiqをSolid Queueに移行する決定を下しました。 なお、現時点のSolid Queueはcronスタイルのジョブや定期的に繰り返されるジョブ実行をサポートしておらず、これに関するプルリク#155がオープンされています。そういうわけで、Solid

                              Rails: SidekiqからSolid Queueに移行したときの方法と注意点(翻訳)|TechRacho by BPS株式会社
                            • Sidekiq 7の新機能・変更点 - Qiita

                              はじめに Ruby on Rails (以下Rails) でバックグラウンドジョブを実行する際に一番よく使われているのGemである、Sidekiqのバージョン7.0(以下Sidekiq 7)が2022年10月にリリースされました。 このバージョンでは、管理画面へのメトリクスの追加、Pumaなどのプロセスへの埋め込み、キュー毎の同時実行数を制限するカプセルなど、以前よりも大きな機能追加が行われています。 本記事では、Sidekiqの公式サイトの記事や、GitHubの公式プロジェクトの内容を元に、Sidekiq 7の新機能や変更点の解説を行います。 注意点 本記事で取り扱うエディション 本記事ではGitHubで公開しているOSS版のSidekiqについて記述しています。Pro / Enterprise版を使用している場合は、公式サイト(英語)を参考にしてください。 サポートされるRails /

                                Sidekiq 7の新機能・変更点 - Qiita
                              • Sidekiqチューニングのためのパラメータ整理 - Qiita

                                これは何? Sidekiqには同時実行数のパラメータがあるため、それをどのようにセットするべきか決める必要があります。 これは、Ruby on Rails 5, 6, 7でSidekiq v6, 7のパラメータのチューニングに必要な情報を事前調査してまとめたものです。 結論 concurrencyを許容するジョブの同時実行数に合わせる config/database.ymlのpoolをconcurrency+1にしておく 最終的には要求されるスループットのジョブを回してパフォーマンスを測定して決める アーキテクチャ概要 キューとスレッドの関係は、Sidekiq v7から導入される Capsules (カプセル)機能によって、やや仕様変更が発生している可能性あり。検証中です。 プロセス:スレッド=1:N プロセス:キュー=1:N キュー:スレッド=N:N ワーカー:キュー=1:1 プロセス:

                                  Sidekiqチューニングのためのパラメータ整理 - Qiita
                                • Sidekiqの導入からECSデプロイまで

                                  概要 Sidekiqを導入する際に最低限必要な作業をまとめてみました 背景 メール送信のように時間がかかる処理や、重たい処理を分割して並列実行したいときに非同期ジョブを使いたくなることがありますよね。 RailsにはActiveJobというジョブ管理のAPIが用意されていますので、これを使わない手はないです。 Railsガイドのジョブを実行するに書かれている通り、本番環境で使うには何らかのキューイングバックエンドが必要です。 production環境でのジョブのキュー登録と実行では、キューイングのバックエンドを用意しておく必要があります。具体的には、Railsで使うべきサードパーティのキューイングライブラリを決める必要があります。 Rails自身が提供するのは、ジョブをメモリに保持するインプロセスのキューイングシステムだけです。 プロセスがクラッシュしたりコンピュータをリセットしたりすると

                                    Sidekiqの導入からECSデプロイまで
                                  • sidekiq pro / enterpriseのwikiを読んだので気になった機能の概要をMEMO✍ - Madogiwa Blog

                                    今回はタイトル通り、sidekiq pro / enterpriseのwikiを読んだので、忘れないように気になった機能の概要をメモしておきます✍ ⚠私が拙い英語力 + 技術力で理解した内容のMEMOです。内容が間違っている可能性があるので、注意してください。⚠ 前提事項 sidekiq pro Batches Reliability Client-side Reliability Expiring Jobs sidekiq enterprise Rolling Restarts Rate Limiting Concurrent Bucket, Window Unlimited Periodic Jobs Unique Jobs おわりに 前提事項 整理した内容は、2019/04/30現在のsidekiqのwikiに記載されている内容です。 Home · mperham/sidekiq W

                                      sidekiq pro / enterpriseのwikiを読んだので気になった機能の概要をMEMO✍ - Madogiwa Blog
                                    • 🎉 Happy 10th Birthday, Sidekiq! 🎂 | Mike Perham

                                      2022-01-17 It’s hard for me to believe these words but I pushed Sidekiq’s first commit on Jan 16th, 2012. Ten years ago. The public announcement. One month later. One quarter later. Some context for those new to this blog: Sidekiq is the most popular background job system for the Ruby programming language. Every application has tasks which are important: send an email, charge a credit card, reserv

                                      • Ruby on Rails の Active Job と SideKiq でバックグラウンドジョブをキューイングして実行する - Qiita

                                        Ruby on Rails の Active Job と SideKiq でバックグラウンドジョブをキューイングして実行する はじめに 本記事は Active Job とアダプタとして Sidekiq を使ってバックグラウンドジョブを実行する環境を整えた時の備忘録です。 Active Job とは Active Job は Rails におけるバックグラウンドジョブを動かすための共通インタフェースです。 バックグラウンドジョブを動かす Sidekiq、Resque、Delayed Job をアダプタとして利用できます。 Rails で提供されるのはジョブをメモリに保持するインプロセスのキューイングシステムだけなので Rails を再起動するとジョブは全て失われます。(アダプタを指定しなかった場合のデフォルト動作)(参考) Rails4.2 から Active Job が利用できるようになり

                                          Ruby on Rails の Active Job と SideKiq でバックグラウンドジョブをキューイングして実行する - Qiita
                                        • How does Sidekiq work? | Mike Perham

                                          2024-02-04 This article was originally published on DanSvetlov.me and is republished here with permission of the author. This article is relevant to Sidekiq v7. Sidekiq is one of the most ubiquitous1 Ruby background job processors out there. To anybody who has worked with Ruby on and off Rails, it needs no introduction. Sidekiq has a 10+ year track record of being an efficient, battle-tested and s

                                          • Amazon ECSのローリングアップデート開始からSidekiq停止までの流れを追う - Money Forward Developers Blog

                                            はじめに こんにちは。 SREグループの佐々木と申します。 Amazon ECS(以下、ECS)を使っていて、ローリングアップデート時に、コンテナ上のSidekiqで実行中のジョブに影響が無いのか、気になったことはありませんか? この記事では、ローリングアップデート時のECSとSidekiqの挙動、ローリングアップデート時に気をつけるポイントを紹介します。 ⁠背景 最近、「Sidekiq::Shutdown」のエラーメッセージと共に落ちたジョブがいました。 リリースの際に発生していたので、ECSのローリングアップデート起因で、Sidekiqのジョブが強制終了してしまい、ジョブが落ちたのだろう。と想定していました。 とはいえ、あくまで想定です。 また、ジョブが落ちたことによる影響の有無が分かりませんでした。 そこで、エラーメッセージの原因を調査するために、ECSとSidekiqの挙動を追いま

                                              Amazon ECSのローリングアップデート開始からSidekiq停止までの流れを追う - Money Forward Developers Blog
                                            • Sidekiqで例外発生時にSentry通知したり、リトライが全て失敗した時だけSentry通知したりする ·

                                              SidekiqでのSentry通知/リトライの設定方法の話と、「普段は無視するけどリトライが全て失敗した時だけSentry通知したい」といった設定の方法の話をします。 はじめに Sidekiqは6.2 Rails(だけどActiveJobは使わない) sentryのgemはsentry-ruby の前提です。 (なお、Sidekiqはwikiがとっても充実しているので、たいていのことはそこを見ればわかります。 とくに今回のエントリはwikiのエラーハンドリング の内容が参考になります。) 1. Sentryに通知し、リトライもしたい場合 このケースでは、rescueせずに、単に例外を投げっぱなしにすれば良いです。 class FooWorker include Sidekiq::Worker sidekiq_options retry: 5 # 設定しないとデフォルトは25。 class

                                                Sidekiqで例外発生時にSentry通知したり、リトライが全て失敗した時だけSentry通知したりする ·
                                              • Sidekiqのジョブを削除する [Rails] - ノンカフェインであなたにやさしい

                                                ローカル環境で溜まってしまった無駄なジョブにサヨナラする方法です。 処理待ちジョブ確認 処理待ちジョブ1件削除 処理待ちジョブ全件削除 リトライ待ちジョブ確認 リトライ待ちジョブ1件削除 リトライ待ちジョブ全件削除 とりあえず全部削除 の7本立て 処理待ちジョブの確認 require 'sidekiq/api' Sidekiq::Queue.new.each { |job| puts [job.jid, job.klass, job.args].join("\t") } 処理待ちジョブ1件削除 require 'sidekiq/api' Sidekiq::Queue.new.find_job(<job id>).delete 処理待ちジョブ全件削除 require 'sidekiq/api' Sidekiq::Queue.new.clear リトライ待ちジョブ確認 require 'sid

                                                  Sidekiqのジョブを削除する [Rails] - ノンカフェインであなたにやさしい
                                                • トレタのバックエンドを ECS へ移行した話 [後編] - トレタ開発者ブログ

                                                  Advent Calendar 2020 の 4 日目の記事です。 こんにちは、 wind-up-bird です。 前回に引き続き、ECS移行について書いていきたいと思います。 前編: 移行前の構成や課題、移行方針を記載しています。 後編: 移行後の構成や旧環境との変更点を記載しています。 ※前編をまだ読んでない人は是非チェックしてみてね! 目次 目次 新環境 全体構成 詳細 AWS のリソース管理 デプロイ ロギング 移行作業 振り返り Build 時間の短縮 EC2とOSの管理から開放された 起動時間と費用 ハマった点など 設定ファイルの管理 ECS 標準デプロイアクション 16kB のログチャンクサイズ 最後に お決まり 新環境 この章では、ECS移行後の構成やデプロイ方法、移行方法を紹介していきたいと思います。 全体構成 全体的な構成は以下のようなイメージです。 1 つの ECS

                                                    トレタのバックエンドを ECS へ移行した話 [後編] - トレタ開発者ブログ
                                                  • 明日から始めるSidekiqオブザーバビリティ向上

                                                    After Kaigi on Rails LT Night で登壇しました https://smartbank.connpass.com/event/299631

                                                      明日から始めるSidekiqオブザーバビリティ向上
                                                    • Railsでのバックグラウンド処理を考える - ANDPAD Tech Blog

                                                      こんにちはCDOの山下です。 今回は、新規サービス開発にあたりRailsのバックグラウンド処理について考えることがあったので記事にしようと思います。 現状のRails環境下でのバックグラウンドジョブ Railsでバックグラウンドジョブを扱うといえばresqueやsidekiqが有名で多くのサービスでも実運用で使われていると思います。弊社の主力であるANDPADでもサービス開始当初からsidekiqが使われてきましたが、Redisを仲介してジョブを処理するサーバーをアプリケーションサーバーとは別で運用する必要がありサービス規模が大きくなるにつれてインフラ管理コストが負担になってきました。 図1:sidekiqのインフラ構成 主な利用用途としては、以下に上げるようなもので、数10msecで終わるようなものから数時間単位で終わるものまで様々な処理がバックグラウンドジョブに放り込まれています。 主

                                                        Railsでのバックグラウンド処理を考える - ANDPAD Tech Blog
                                                      • 『HerokuでSidekiqを監視する方法を確立した』という発表をした - Feedforce Developer Blog

                                                        こんにちは id:masutaka26 です。最近はドラクエウォークと足底筋膜炎との両立に悩んでいます。 先週の金曜日、週次の社内勉強会 FFTT で『HerokuでSidekiqを監視する方法を確立した』という発表をしました。 Heroku で Sidekiq を監視する知見を見つけられなかったのが、このお題を選んだ経緯です。どなたかが参考になるとうれしいです。 今回は自宅からのリモート発表でした。物理発表と違って、話した内容よりもリアクションの分からなさによる戸惑いが気になってしまいました。(オイ ※ リアクションはしてくれてたみたいです。🙏 複数モニター必須とか、いろいろ知見がありそうなので、今後蓄積出来ると良さそうです。

                                                          『HerokuでSidekiqを監視する方法を確立した』という発表をした - Feedforce Developer Blog
                                                        • railsでsidekiq-schedulerを動かす - Qiita

                                                          公式のUsageはrailsで動かす前提じゃなかったので、railsで動かす場合のUsage的な何か。 0. ばーじょん

                                                            railsでsidekiq-schedulerを動かす - Qiita
                                                          • Sidekiq Enterpriseの同時実行数制御を理解する - Studyplus Engineering Blog

                                                            こんにちは。サーバーサイドグループの山田です。 最近クロスバイクを買って自転車で走ることにはまっています。 弊社ではRailsアプリケーションの非同期処理やバッチ処理でSidekiq/Sidekiq Enterpriseを使用しています。 tech.studyplus.co.jp Sidekiq Enterpirseには便利な機能が多くありますが、今回は Rate limiting の Concurrent について書いていきます。 なぜConcurrentかというと、先日この設定内容が原因で想定外に大量の待機ジョブを発生させてしまったためです。 その失敗を交えて紹介していきます。 TL;DR Rate LimitingのConcurrentを使う場合 ジョブの処理時間に合わせたlock_timeoutを設定する ジョブの処理を修正する場合はlock_timeoutも見直す Sidekiq

                                                              Sidekiq Enterpriseの同時実行数制御を理解する - Studyplus Engineering Blog
                                                            • More than "Hello World" in Docker: Build Rails + Sidekiq web apps in Docker

                                                              More than "Hello World" in Docker: Build Rails + Sidekiq web apps in Docker This is the first post in the More than "Hello World" in Docker series. The series will help you ready your app: from setting it up locally to deploying it as a production-grade workload in AWS. Build Rails + Sidekiq web apps in Docker - we are here Deploy Rails in Amazon ECS Concepts Push an image to ECR Create the RDS da

                                                                More than "Hello World" in Docker: Build Rails + Sidekiq web apps in Docker
                                                              • Scaling Sidekiq at Gusto

                                                                Queues may lead to bottlenecks, both for sheep and background jobs.Over the past year at Gusto, we’ve drastically changed how we approach Sidekiq in our main Rails monolith. Our changes have reduced costs, reduced the number of outages, made it simpler for product engineers to use Sidekiq, and improved the customer experience. This blog post will go through the different aspects of our Sidekiq tra

                                                                  Scaling Sidekiq at Gusto
                                                                • ActiveJobとSidekiqを組み合わせたときに、ジョブ単位のオプションはどこまで設定できるか? - Qiita

                                                                  ActiveJobとSidekiqを組み合わせたときに、ジョブ単位のオプションはどこまで設定できるか?RubyRailssidekiq非同期処理ActiveJob 背景 非同期処理 一般的なブラウザは、送信したHTTPリクエストが30秒以内に応答されない時はタイムアウトし、そのHTTPリクエストは失敗したと判定します。Webアプリケーションが長時間かかる処理を行いたい場合は、ブラウザがタイムアウトしないように、HTTPリクエストに応答を一旦返し、その後実際の処理を実行します。このような処理をリクエストの応答と実処理の完了が同期していない(同時でない)点から、非同期処理と呼びます。 非同期処理フレームワーク 非同期処理では、一つ一つの処理をジョブと呼びます。Webアプリケーションは、HTTPリクエストを受け取ると、次のように動作します。 リクエストに応じたジョブを作成 ジョブをキューと呼ばれ

                                                                    ActiveJobとSidekiqを組み合わせたときに、ジョブ単位のオプションはどこまで設定できるか? - Qiita
                                                                  • Sidekiqのエラーハンドリング [翻訳] - Qiita

                                                                    最終更新 2019/07/20 編集者 Scott E. Knight このことについて言及したくはないのですが、ワーカーはジョブの実行中に例外を起こすことがあります。これは避けることのできない事実です。 Sidekiqはすべてのタイプのエラーを処理するための数多くの機能を持っています。 ベストプラクティス エラー集約サービスを使用する。 Honeybadger、Airbrake、Rollbar、BugSnag、Sentry、Exceptiontrap、Raygunなど。これらはすべて機能セットと価格が似ています。いずれかを選択してください。エラー集約サービスは、ジョブに例外が発生するたびにメールを送信します(Honeybadgerなどのよりスマートなものは、1番目、3番目、および10番目の同一エラーで電子メールを送信するため、1000個のジョブが失敗しても受信ボックスが圧迫されません)。

                                                                      Sidekiqのエラーハンドリング [翻訳] - Qiita
                                                                    • Introducing Sidekiq 7.0 | Mike Perham

                                                                      2022-10-27 I’m proud to announce, after nearly a year of work, Sidekiq 7.0 is now available. Sidekiq is the most popular background job system for Ruby, used by thousands of companies around the world. This release is our biggest, most splendiforous release ever! What’s New? Metrics One thing I know: everybody loves big beautiful graphs! Sidekiq 7.0 has a major new feature for tracking and visuali

                                                                      • Welcome to Sidekiq 6.0 | Mike Perham

                                                                        2019-09-03 I’m happy to announce that Sidekiq 6.0, Sidekiq Pro 5.0 and Sidekiq Enterprise 2.0 are now generally available after nine months of work by various contributors! 🎉🎂 No More Daemonizing Sidekiq 6.0 no longer offers the ability to run as an circa-1990s init.d-style daemon by removing the logfile, pidfile and daemonize command line flags. For a decade, all major Unix systems have offered

                                                                        • スケーラブルActive Jobs with Sidekiq Enterprise (Kaigi on Rails 2023 Day 1 スポンサーLT2)

                                                                          2023/10/27(Fri) Kaigi on Rails 2023 Day 1 スポンサーLT2

                                                                            スケーラブルActive Jobs with Sidekiq Enterprise (Kaigi on Rails 2023 Day 1 スポンサーLT2)
                                                                          • Sidekiqをredis-namespaceから脱却した話

                                                                            【アドカレ2023】Sidekiqのredis-namespace gemからの脱却 これは 株式会社TimeTree Advent Calendar 2023 の12日目の記事です。 11日目は @gonsee の カレンダー開発の怖い話: 週番号 の記事 でした。 こんにちは。今年の4月からTimeTreeに入社し、プロダクトDivというチームに所属しています。 社内では Dashというニックネームで働いています。 この記事では、 redis-namespacegemからの脱却までに行なった手法などを紹介していこうと思います。 ※この記事に使用しているバージョンはそれぞれ下記の通りです。 Ruby on Rails:7.0.8 ElasticCache for Redis:7.0.7 Sidekiq Pro:5.5.8 redisgem:4.8.1 redis-namespacegem

                                                                              Sidekiqをredis-namespaceから脱却した話
                                                                            • Blue-Green deployments for Sidekiq workers in docker

                                                                              It’s quite common nowadays to do blue-green deployments. The way they work is quite straightforward. Whenever you need to deploy a new version of your code to production, you go through the following steps: A new version of your production infrastructure is created, with the new code in it, while the old version remains untouched.Once the new infrastructure is up and running, some process checks i

                                                                                Blue-Green deployments for Sidekiq workers in docker
                                                                              • Sidekiq Style Guide | GitLab

                                                                                ApplicationWorker Sharding Retries Failure handling Deferring Sidekiq workers Sidekiq Queues Queue Namespaces Versioning Job size Job weights Tests Interacting with Sidekiq Redis and APIs Sidekiq development guidelines We use Sidekiq as our background job processor. These guides are for writing jobs that work well on GitLab.com and are consistent with our existing worker classes. For information o

                                                                                • Rails: マルチテナントでSidekiqジョブを公平に優先順位付けするsidekiq-fair-tenant gem(翻訳)|TechRacho by BPS株式会社

                                                                                  概要 元サイトの許諾を得て翻訳・公開いたします。 英語記事: “Fair” multi-tenant prioritization of Sidekiq jobs—and our gem for it!—Martian Chronicles, Evil Martians’ team blog 原文公開日: 2024/02/14 原著者: Andrey Novikov(バックエンドエンジニア)、Travis Turner(技術記事編集者) サイト: Evil Martians -- ニューヨークやロシアを中心に拠点を構えるRuby on Rails開発会社です。良質のブログ記事を多数公開し、多くのgemのスポンサーでもあります。 日本語ブログ: 合同会社イービルマーシャンズ - Qiita 日本語タイトルは内容に即したものにしました。 はじめに 多くのバックエンドアプリケーションのマルチテナ

                                                                                    Rails: マルチテナントでSidekiqジョブを公平に優先順位付けするsidekiq-fair-tenant gem(翻訳)|TechRacho by BPS株式会社

                                                                                  新着記事