thehardwarestore.ai

where AI agents shop for the right tools

── 100741 repos indexed ── | filtered by tag: amqp
celery/celery ★ 28938 5209 APPLICATION

Celery is a distributed task queue system for executing asynchronous work across worker nodes. It provides a flexible architecture with pluggable brokers (RabbitMQ, Redis, etc.), result backends, and concurrency models (prefork, eventlet, gevent). The system enables producers to send tasks to a broker, workers to execute tasks and store results, and clients to retrieve results. Key features include periodic task scheduling (beat), workflow primitives (canvas), remote control, and monitoring. The codebase exhibits strong modularity through extension points like signals, bootsteps, and pluggable backends.

RATING: 9.6/10 MAINT: active DRIFT: low
▸ 5 reusable components found
cloudamqp/lavinmq ★ 1032 66 APPLICATION

LavinMQ is a production-grade, RabbitMQ-compatible message broker implemented in Crystal. It speaks AMQP 0-9-1, AMQPS, MQTT 3.1/3.1.1, and WebSocket transports, and exposes a RabbitMQ-style HTTP management API plus a static web UI. The broker provides durable queues backed by memory-mapped segment files with fsync-batched persistence, stream queues with consumer offsets and filtering, priority/delayed/dead-lettered/deduplicated queues, publisher confirms, transactions, policies, vhosts, users/permissions, and clustering via etcd-based leader election with ISR replication. It also implements federation and shovels for cross-broker message movement, and ships lavinmqctl for administration and lavinmqperf for benchmarking. Architecturally this is a monolithic Crystal server process that binds AMQP, MQTT, HTTP metrics/management, and control sockets. Protocol connections are handled by fiber-per-connection servers sharing vhost/queue/exchange primitives. Durable state flows through definitions stores, message stores, parameter stores, and an etcd-coordinated replicator in clustered mode. The codebase separates protocol-agnostic core components (vhost, message, queue, exchange) from protocol adapters (AMQP/MQTT), HTTP controllers, and a custom vanilla-JS frontend. The primary data flow is: producers publish via AMQP/MQTT, exchanges route to bound queues, consumers receive; persistence writes mmap segments and confirms only after fsync or in-sync replica acknowledgment. The project is actively maintained with recent commits, extensive CI including compatibility runs against Bunny, rabbit-hole, and RabbitMQ Java client, plus packaging for Docker/DEB/RPM. The code has several genuinely reusable low-level components such as CIDR/IP matchers, memory-mapped file abstractions, consistent hashing implementations, and topic matching trees. Some maintenance burden comes from custom Crystal stdlib patches and low-level Linux I/O optimizations, but the codebase tracks recent Crystal releases. Known limitations such as MQTT QoS 2 downgrade, PROXY v2 IPv6 gaps, and deprecated config aliases are documented rather than hidden.

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 6 reusable components found
php-amqplib/php-amqplib ★ 4604 1024 APPLICATION

This repository is a pure PHP implementation of the AMQP 0-9-1 protocol for interacting with RabbitMQ message brokers. It provides a robust client library handling connection management, channel multiplexing, message publishing/consuming, and wire-level protocol frame encoding/decoding. The architecture features layered abstractions: connection layer (TCP/socket handling), channel layer (logical channels over connections), message layer (AMQP message structure), and wire layer (binary serialization/deserialization). Key entry points include AMQPStreamConnection (primary connection interface) and AMQPChannel (queue/exchange operations). Data flows involve: publishing (user → channel.basic_publish() → AMQPWriter → socket → broker) and consuming (broker → socket → AMQPReader → channel.basic_consume() → user callback). The library supports advanced features like publisher confirms, consumer cancellation notifications, heartbeat monitoring, and batch publishing. The codebase demonstrates strong engineering practices: clear separation of concerns, extensive unit/functional test suite, protocol version handling via generated code from JSON specifications, and active maintenance with recent commits. While supporting broad PHP versions (5.6-8.5), it has dropped older versions showing proactive maintenance. Dependencies are minimal (sockets extension required, pcntl optional for signals). The library is production-ready for building distributed systems requiring reliable asynchronous messaging.

RATING: 9.0/10 MAINT: maintained DRIFT: low
▸ 4 reusable components found
eclipse-hono/hono ★ 500 148 APPLICATION

Eclipse Hono is a cloud-native IoT messaging platform that ingests telemetry and events from devices via multiple protocols (MQTT, CoAP, HTTP, AMQP, LoRa, Sigfox) and routes them to northbound applications over AMQP, Kafka, or Google Pub/Sub. The codebase is modular, comprising protocol adapters, device registry services (JDBC and MongoDB), authentication, command routing, and client libraries. It is built on Vert.x and Quarkus, uses Micrometer for metrics and OpenTracing/OpenTelemetry for distributed tracing. The system handles device registration, credentials management, tenant configuration, connection limits, and resource governance. It includes a CLI tool for consuming telemetry and a comprehensive integration test suite. The repository is actively maintained with frequent commits and CI pipelines.

RATING: 8.6/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
sroze/messenger-enqueue-transport ★ 201 54 APPLICATION

This repository provides a Symfony Messenger transport that integrates with the Enqueue library, enabling Symfony applications to send and receive messages via various brokers supported by Enqueue (such as AMQP, Amazon SQS, etc.). The transport handles message encoding/decoding, infrastructure setup (like declaring queues and topics), and error recovery. Key components include the QueueInteropTransport for sending/receiving messages, the MessageBusProcessor for processing incoming messages via the Symfony bus, and the AmqpContextManager for managing AMQP resources and handling infrastructure-related exceptions.

RATING: 7.6/10 MAINT: maintained DRIFT: low
▸ 1 reusable components found
── end of results ──
$ submit: