awesome-repositories.com
Blog
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetÀ proposNotre méthodologiePresseServeur MCP
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

36 dépôts

Awesome GitHub RepositoriesAtomic Task Locks

File-level locking mechanisms to prevent race conditions during concurrent task execution.

Distinct from Caching and Locking: Distinct from Caching and Locking: focuses specifically on atomic task claiming and concurrency control for agents rather than general data caching.

Explore 36 awesome GitHub repositories matching data & databases · Atomic Task Locks. Refine with filters or upvote what's useful.

Awesome Atomic Task Locks GitHub Repositories

Trouvez les meilleurs dépôts grâce à l'IA.Nous recherchons les dépôts les plus pertinents grâce à l'IA.
  • shareai-lab/learn-claude-codeAvatar de shareAI-lab

    shareAI-lab/learn-claude-code

    67,975Voir sur GitHub↗

    This project provides a modular framework for building and orchestrating autonomous AI agents. It functions as an agentic workflow engine that manages the full lifecycle of task execution, including model reasoning, tool invocation, and the integration of results. By utilizing a centralized orchestration platform, the system enables the creation of multi-agent teams that collaborate on complex objectives through structured communication and shared task graphs. The framework distinguishes itself through its focus on persistent, stateful operations and multi-agent coordination. It employs file-

    Prevents race conditions and duplicate task firing using file-level locks and dependency validation.

    Pythonagentagent-developmentai-agent
    Voir sur GitHub↗67,975
  • seata/seataAvatar de seata

    seata/seata

    25,987Voir sur GitHub↗

    Seata is a distributed transaction coordinator and consistency framework designed to maintain data integrity across multiple microservices. It functions as a manager that synchronizes state across separate databases to ensure atomic commits or rollbacks of global transactions. The project provides a toolkit for implementing distributed transaction patterns, using a two-phase commit protocol and centralized status tracking to prevent data anomalies. It orchestrates eventual consistency through state-machine-based tracking and message-driven coordination to handle timeouts and failures in distr

    Implements resource-level locking during the prepare phase to prevent concurrent modifications until a global decision is reached.

    Java
    Voir sur GitHub↗25,987
  • redisson/redissonAvatar de redisson

    redisson/redisson

    24,355Voir sur GitHub↗

    Redisson is a Java library and Redis client that functions as a distributed Java object mapper, caching provider, and locking framework. It maps Java collections and concurrency primitives to distributed implementations backed by Redis and Valkey, providing synchronous, asynchronous, and reactive APIs for interacting with these data stores. The project distinguishes itself by providing a comprehensive suite of distributed coordination tools, including a locking framework for managing semaphores and countdown latches across multiple application nodes. It also serves as a distributed messaging

    Executes Lua scripts on the server to ensure multi-step operations are performed as a single atomic unit.

    Java
    Voir sur GitHub↗24,355
  • optimalbits/bullAvatar de OptimalBits

    OptimalBits/bull

    16,243Voir sur GitHub↗

    Bull is a Node.js library for managing distributed jobs and message queues using Redis as the primary data store. It functions as a distributed task worker, job scheduler, and priority queue manager designed to handle asynchronous workloads across multiple processes. The project distinguishes itself by providing a persistent communication channel that decouples servers through the exchange of serializable data objects. It ensures distributed system reliability by detecting stalled tasks and recovering from process crashes to ensure every queued job is completed. The system covers a broad ran

    Utilizes server-side Lua scripts to perform atomic state transitions and prevent race conditions between distributed workers.

    JavaScriptjobjob-queuemessage
    Voir sur GitHub↗16,243
  • dgraph-io/badgerAvatar de dgraph-io

    dgraph-io/badger

    15,666Voir sur GitHub↗

    Badger is an embeddable key-value store written in Go that provides persistent data storage for byte keys and values. It is a persistent database that utilizes a tiered LSM tree storage model to optimize disk storage and retrieval efficiency. The system features an ACID transaction engine that ensures data integrity through serializable snapshot isolation and multi-version concurrency control. It also provides an encrypted key-value store with data-at-rest encryption and a managed encrypted key registry to secure stored information. The engine covers a broad set of capabilities including hig

    Acquires exclusive access to the data directory using a lock file to prevent concurrent process access.

    Godatabasedocument-databasego
    Voir sur GitHub↗15,666
  • luin/ioredisAvatar de luin

    luin/ioredis

    15,295Voir sur GitHub↗

    ioredis is a performance-focused Redis client for Node.js designed to execute commands and manage data connections. It provides a specialized interface for interacting with standalone servers, sharded clusters, and high-availability setups. The library distinguishes itself with native support for Redis Cluster, featuring automatic slot discovery and network address mapping, and Redis Sentinel for master node discovery and automatic failover. It also includes a dedicated Lua scripting interface that utilizes server-side caching to ensure atomic operations. The project covers a broad set of ca

    Implements server-side Lua script execution with SHA1 caching to ensure atomicity and reduce network traffic.

    TypeScript
    Voir sur GitHub↗15,295
  • boltdb/boltAvatar de boltdb

    boltdb/bolt

    14,642Voir sur GitHub↗

    Bolt is a single-file embedded key-value store for Go applications. It is an ACID transactional database that organizes data in B+trees on disk to provide efficient sorted key retrieval and range scans. The system uses a memory-mapped model to map the database file directly into the process address space for fast random-access reads. The project distinguishes itself through a multi-version concurrency control architecture that allows multiple simultaneous readers to access a consistent snapshot of data without blocking a writer. It employs a single-writer multi-reader locking model and uses a

    Prevents multiple processes from accessing the same database file by acquiring an exclusive advisory lock.

    Go
    Voir sur GitHub↗14,642
  • rust-lang/cargoAvatar de rust-lang

    rust-lang/cargo

    14,624Voir sur GitHub↗

    Cargo is the official build system and package manager for the Rust programming language. It provides a unified command-line interface that orchestrates the entire development lifecycle, including compiling source code, managing complex dependency graphs, running tests, and distributing packages through a centralized registry. By utilizing declarative manifest files, it ensures that builds remain reproducible and consistent across different environments. The tool distinguishes itself through its deep integration with the Rust compiler and its sophisticated approach to project management. It f

    Applies fine-grained locking to the build cache to prevent conflicts during concurrent operations.

    Rustcargopackage-managerrust
    Voir sur GitHub↗14,624
  • sidekiq/sidekiqAvatar de sidekiq

    sidekiq/sidekiq

    13,540Voir sur GitHub↗

    Sidekiq is a background job processor and queue manager for Ruby that uses Redis to manage asynchronous tasks. It functions as a distributed task scheduler capable of handling periodic, delayed, and recurring jobs across a cluster of worker processes. The project features a job monitoring dashboard and administrative web interface for visualizing system state, tracking worker performance, and managing failed or dead jobs. It provides a distributed rate limiter to control execution frequency across multiple processes. The framework covers a broad range of operational capabilities, including j

    Uses Lua scripting to execute atomic state transitions and queue movements on the Redis server.

    Rubybackground-jobsjobsruby
    Voir sur GitHub↗13,540
  • mperham/sidekiqAvatar de mperham

    mperham/sidekiq

    13,536Voir sur GitHub↗

    Sidekiq is a Ruby background processing framework and asynchronous task runner. It functions as a Redis-backed background job processor that offloads heavy or time-consuming work from web requests to separate worker processes to ensure the main application remains responsive. The system operates as a Redis task queue, storing pending jobs in Redis to be processed concurrently by multiple threads. It provides a framework for distributed task queueing and asynchronous job scheduling to coordinate work across multiple server instances. The project covers Ruby application scaling by executing ba

    Uses Lua scripts within Redis to execute atomic operations and prevent race conditions during job acquisition.

    Ruby
    Voir sur GitHub↗13,536
  • hibiken/asynqAvatar de hibiken

    hibiken/asynq

    12,914Voir sur GitHub↗

    Asynq is a distributed background job processing framework for Go applications. It manages asynchronous task queues by offloading heavy operations to persistent storage, allowing the main application to remain responsive while background workers handle workloads. The system utilizes Redis to manage task state, concurrency, and message distribution across multiple worker instances. It employs atomic Lua scripting and sorted sets to ensure reliable job acquisition, precise scheduling of delayed tasks, and fault-tolerant processing through a two-stage acknowledgement flow. The framework support

    Executes atomic state transitions within the data store to ensure thread-safe job acquisition and reliable task processing.

    Goasynchronous-tasksbackground-jobsgo
    Voir sur GitHub↗12,914
  • microsoft/garnetAvatar de microsoft

    microsoft/garnet

    11,885Voir sur GitHub↗

    Garnet is a multi-threaded in-memory database and distributed key-value store. It functions as a high-performance remote cache store that implements the RESP wire protocol to maintain compatibility with existing Redis clients and libraries. The project is distinguished by a shared-memory architecture that enables parallel request processing across multiple cores for sub-millisecond latency. It features a tiered storage system that automatically offloads colder data from system memory to SSD or cloud storage layers, and includes a specialized vector search database for high-dimensional similar

    Executes Lua scripts atomically on the server to combine multiple operations in one round trip.

    C#cachecache-storagecluster
    Voir sur GitHub↗11,885
  • tporadowski/redisAvatar de tporadowski

    tporadowski/redis

    9,987Voir sur GitHub↗

    Redis is a high-performance in-memory key-value store that functions as a distributed cache, message broker, and NoSQL database. It provides sub-millisecond read and write access to data stored in RAM and can operate as a vector database for indexing high-dimensional embeddings. The system supports a wide range of data storage and synchronization primitives, including the management of strings, hashes, lists, sets, and JSON documents. It enables real-time data operations through atomic transactions, hybrid persistence using snapshots and append-only logs, and high-availability configurations

    Executes Lua scripts on the server to perform atomic state transitions and complex operations.

    Credisredis-for-windowsredis-msi-installer
    Voir sur GitHub↗9,987
  • runatlantis/atlantisAvatar de runatlantis

    runatlantis/atlantis

    9,146Voir sur GitHub↗

    Atlantis is a GitOps deployment tool and infrastructure as code orchestrator that synchronizes cloud resources with a git repository using pull request comments. It serves as a policy-based infrastructure gate and automation system for Terraform, executing plans and applies directly from version control to coordinate deployments across multiple projects and environments. The system differentiates itself through a lock-based concurrency model that prevents simultaneous modifications to the same project or workspace. It features server-side policy validation to intercept plan outputs for compli

    Prevents simultaneous modifications to the same cloud resource by locking projects and workspaces during execution.

    Go
    Voir sur GitHub↗9,146
  • redis/redisinsightAvatar de redis

    redis/RedisInsight

    8,556Voir sur GitHub↗

    RedisInsight is a graphical user interface and management tool for browsing, analyzing, and administering Redis databases. It provides a visual environment for exploring key-value data structures, managing database instances, and performing data analysis across different operating systems and deployments. The tool distinguishes itself by providing dedicated visual managers for complex operations, including a vector database manager for configuring embeddings and similarity searches, a query workbench for executing raw commands and Lua scripts, and a performance monitoring dashboard for tracki

    Executes Lua scripts from external files by automatically mapping required keys and arguments.

    TypeScriptdatabase-guiredisredis-gui
    Voir sur GitHub↗8,556
  • taskforcesh/bullmqAvatar de taskforcesh

    taskforcesh/bullmq

    8,432Voir sur GitHub↗

    BullMQ is a Redis-backed message queue library and background processor designed for distributed task queueing. It functions as a distributed queue manager and task scheduler, utilizing Redis to manage asynchronous job processing and persistence. The system distinguishes itself through its role as a job workflow orchestrator, enabling the definition of complex parent-child job dependencies and hierarchies for multi-step workflows. It provides sandboxed process execution to isolate heavy workloads and prevent event loop blocking, alongside distributed rate limiting to protect downstream servic

    Executes complex queue transitions and state updates via Lua scripts to ensure atomicity within Redis.

    TypeScriptbackground-jobselixirnodejs
    Voir sur GitHub↗8,432
  • zsh-users/antigenAvatar de zsh-users

    zsh-users/antigen

    8,324Voir sur GitHub↗

    Antigen is a git-based package manager and configuration orchestrator for the Zsh shell environment. It serves as a plugin manager designed to download, load, and update plugins, themes, and frameworks directly from Git repositories using specific branches, tags, or versions. The project focuses on shell startup optimization by using static bundle caching and batch completion loading to reduce boot times. It distinguishes itself through environment reproduction capabilities, such as file-based state snapshotting and plugin state restoration, and a distribution workflow that bundles configurat

    Implements file-level locking to prevent race conditions and corruption during concurrent plugin installations.

    Shell
    Voir sur GitHub↗8,324
  • laravel/tinkerAvatar de laravel

    laravel/tinker

    7,433Voir sur GitHub↗

    Laravel Tinker is an interactive shell that boots the full Laravel application context, allowing you to run PHP code, test models, and experiment with the framework in real time from the command line. It integrates PsySH as its underlying REPL engine, providing features like automatic namespace resolution, command history persistence, and on-demand class loading through Composer's autoloader. The tool handles the full lifecycle of a Laravel console command, from defining input signatures and prompting for missing arguments to executing commands programmatically and queuing them for background

    Prevents concurrent execution of the same command by acquiring an atomic lock.

    PHPlaravelpsyshrepl
    Voir sur GitHub↗7,433
  • haproxy/haproxyAvatar de haproxy

    haproxy/haproxy

    6,344Voir sur GitHub↗

    HAProxy is a high-performance TCP and HTTP proxy that distributes traffic across multiple backend servers to ensure availability and fault tolerance for critical services. It operates in either TCP or HTTP mode, with an event-driven, single-threaded reactor that handles tens of thousands of connections without context switching, and supports kernel-level data transfer to minimize memory usage and latency. What distinguishes HAProxy is its configuration-file-first design, where all load-balancing rules and runtime behavior are defined in a declarative text file parsed at startup. It embeds a L

    Embeds and executes Lua code within the proxy to implement custom request handling and routing.

    Ccachecachingddos-mitigation
    Voir sur GitHub↗6,344
  • stackexchange/stackexchange.redisAvatar de StackExchange

    StackExchange/StackExchange.Redis

    6,169Voir sur GitHub↗

    General purpose redis client

    Runs Lua scripts directly on a Redis server using named parameter replacement for complex, atomic server-side logic.

    C#
    Voir sur GitHub↗6,169
Préc.12Suivant
  1. Home
  2. Data & Databases
  3. Caching and Locking
  4. Atomic Task Locks

Explorer les sous-tags

  • Database Record Locks3 sous-tagsLocking mechanisms for specific database records during distributed transaction phases. **Distinct from Atomic Task Locks:** Distinct from Atomic Task Locks by targeting database records for transaction isolation rather than task execution concurrency.
  • Distributed Exclusive LockingPreventing multiple distributed processes from accessing a shared resource by maintaining an exclusive lock in a remote store. **Distinct from Exclusive Store Locking:** Broadens the scope from locking database directories (Exclusive Store Locking) to general shared resources across distributed processes.
  • Distributed Task Locks1 sous-tagAtomic locks using a central store to prevent duplicate task execution across multiple server instances. **Distinct from Atomic Task Locks:** Distinct from Atomic Task Locks: specifically focuses on multi-server synchronization rather than single-process race conditions.
  • Exclusive Store Locking1 sous-tagMechanisms that prevent multiple process instances from opening the same database directory. **Distinct from Database Record Locks:** Distinct from record locks by locking the entire database directory rather than individual data records.
  • Infrastructure Resource Locks1 sous-tagLocking mechanisms to prevent concurrent modifications to the same infrastructure project or workspace. **Distinct from Atomic Task Locks:** Focuses on preventing concurrent infrastructure modifications, whereas Atomic Task Locks are for general task agents.
  • Lua Scripting5 sous-tagsExecutes atomic state transitions within the data store to ensure thread-safe job acquisition. **Distinct from Atomic Task Locks:** Distinct from Atomic Task Locks: focuses on the Lua-based implementation of atomic operations rather than general file-level locking.