How to Avoid Race Conditions in Rails

This page summarizes the projects mentioned and recommended in the original post on dev.to

InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  • with_advisory_lock

    Advisory locking for ActiveRecord

  • Advisory locking is a mechanism used to prevent concurrent execution of code without necessarily locking the database table or row. In core Ruby, this is implemented using mutex. In Rails, the Ruby gem with_advisory_lock can be used to add advisory locking (mutexes) to ActiveRecord when used with MySQL or PostgreSQL.

  • sidekiq-unique-jobs

    Prevents duplicate Sidekiq jobs

  • If you use Sidekiq workers to make changes to your database, you can use SidekiqUniqueJobs to add unique constraints to Sidekiq queues. Uniqueness is achieved by acquiring locks for a hash of a queue name, a worker class, and a job's arguments. By default, only one lock for a given hash can be acquired. If an attempt to acquire a new lock is made, an exception SidekiqUniqueJobs::ScriptError is raised.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • Getting Sidekiq to play nicely with auto-scaling

    4 projects | /r/rails | 15 Mar 2021
  • How to Use Flume in your Elixir Application

    2 projects | dev.to | 16 Apr 2024
  • 3 one-person million dollar online businesses

    2 projects | /r/Business_Ideas | 4 Dec 2023
  • Exploring concurrent rate limiters, mutexes, semaphores

    2 projects | dev.to | 11 Sep 2023
  • Sidekiq and managing resumable jobs?

    2 projects | /r/rails | 24 May 2023