# RabbitMQ

Published articles for RabbitMQ.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## New in Symfony 8.2: Cross-Application Messaging

DevFeed: [New in Symfony 8.2: Cross-Application Messaging](<https://devfeed.tech/articles/new-in-symfony-8-2-cross-application-messaging-106096.md>)

Original publisher: [Read original article](<https://symfony.com/blog/new-in-symfony-8-2-cross-application-messaging>)

Author: Javier Eguiluz

Published: 2026-10-29T08:30:00Z

Content type: tutorial

Language: en

Sources: [Symfony](<https://devfeed.tech/sources/symfony-blog.md>)

Topics: [Symfony](<https://devfeed.tech/topics/symfony.md>), [Messaging](<https://devfeed.tech/topics/messaging.md>), [RabbitMQ](<https://devfeed.tech/topics/rabbitmq.md>)

Tags: [applications](<https://devfeed.tech/tags/applications.md>), [cross](<https://devfeed.tech/tags/cross.md>), [except](<https://devfeed.tech/tags/except.md>), [go](<https://devfeed.tech/tags/go.md>), [json](<https://devfeed.tech/tags/json.md>), [messaging](<https://devfeed.tech/tags/messaging.md>), [node-js](<https://devfeed.tech/tags/node-js.md>), [php](<https://devfeed.tech/tags/php.md>), [rabbitmq](<https://devfeed.tech/tags/rabbitmq.md>), [symfony](<https://devfeed.tech/tags/symfony.md>)

### AI overview

Symfony 8.2 adds an interop serializer for Messenger transports shared with applications that may use different configurations or languages. It omits stamps when sending and ignores incoming stamps, avoiding failures from unavailable stamp classes or bus names; retry and failure-transport messages retain stamps for retry counting. Messages use a JSON body and plain headers. The default `type` header is a PHP class name, so cross-application consumers can use a shared serialized type name; for a single-message transport, configure the class explicitly, or provide a closure to determine types for multiple messages. The serializer maps message ID, correlation, and causation stamps to headers when `identity_stamps` is enabled, and custom mappers can expose other stamp data. Signatures include serializer-written headers except `Content-Type`, including mapped headers, but exclude headers added later. Applications consuming signed transports must be upgraded before senders because Symfony 7.4.18+ and 8.1.6+ reject signed messages with headers outside the listed allowlist.

### Source excerpt

Messenger transports often connect your Symfony application to other applications, which may not use Symfony or even PHP. For example, a shop publishes its orders to RabbitMQ and an invoicing service written in Go consumes them. Symfony 8.2 adds a new serializer...

## Replacing Transactional MSMQ with RabbitMQ Without Losing Consistency

DevFeed: [Replacing Transactional MSMQ with RabbitMQ Without Losing Consistency](<https://devfeed.tech/articles/replacing-transactional-msmq-with-rabbitmq-without-losing-consistency-97413.md>)

Original publisher: [Read original article](<https://hackernoon.com/replacing-transactional-msmq-with-rabbitmq-without-losing-consistency?source=rss>)

Author: Ilnur Yusupov

Published: 2026-10-23T08:31:42Z

Content type: article

Language: en

Sources: [HackerNoon](<https://devfeed.tech/sources/hackernoon.md>)

Topics: [RabbitMQ](<https://devfeed.tech/topics/rabbitmq.md>), [Messaging](<https://devfeed.tech/topics/messaging.md>), [Transactions](<https://devfeed.tech/topics/transactions.md>), [consistency](<https://devfeed.tech/topics/consistency.md>), [acid](<https://devfeed.tech/topics/acid.md>), [schema-evolution](<https://devfeed.tech/topics/schema-evolution.md>)

Tags: [consistency](<https://devfeed.tech/tags/consistency.md>), [distributed-systems](<https://devfeed.tech/tags/distributed-systems.md>), [msmq](<https://devfeed.tech/tags/msmq.md>), [msmq-to-rabbitmq-migration](<https://devfeed.tech/tags/msmq-to-rabbitmq-migration.md>), [net](<https://devfeed.tech/tags/net.md>), [net-framework](<https://devfeed.tech/tags/net-framework.md>), [outbox](<https://devfeed.tech/tags/outbox.md>), [outbox-pattern](<https://devfeed.tech/tags/outbox-pattern.md>), [rabbitmq](<https://devfeed.tech/tags/rabbitmq.md>), [sql-server-transactions](<https://devfeed.tech/tags/sql-server-transactions.md>)

### AI overview

A direct MSMQ-to-RabbitMQ swap loses the atomicity that System.Transactions and MSDTC can provide across SQL Server and transactional MSMQ. Publishing before the SQL commit can expose an event for rolled-back data; publishing afterward can leave committed data without an event. The outbox addresses this dual-write gap by recording the business change and outgoing message in one database transaction, then dispatching to RabbitMQ asynchronously with publisher confirms and retries. A crash after broker confirmation but before marking the outbox row can cause duplicate publication, so consumers need idempotent processing, such as storing MessageId with business updates in one transaction. This replaces coordinated distributed transactions with eventual consistency and at-least-once delivery. The article also outlines operational needs such as concurrent row claiming, backoff, ordering, poison-message handling, monitoring, and cleanup, and recommends isolating messaging changes from runtime migration.

### Source excerpt

Learn why replacing transactional MSMQ with RabbitMQ changes consistency guarantees and how the outbox pattern helps preserve reliable messaging. TL;DR: Repla

## Vercel Daemons is now in public beta

DevFeed: [Vercel Daemons is now in public beta](<https://devfeed.tech/articles/vercel-daemons-is-now-in-public-beta-88232.md>)

Original publisher: [Read original article](<https://vercel.com/changelog/vercel-daemons-is-now-in-public-beta>)

Author: Florentin Eckl

Published: 2026-10-15T07:00:00Z

Content type: release

Language: en

Sources: [Vercel News](<https://devfeed.tech/sources/vercel-news.md>)

Topics: [AWS Fargate](<https://devfeed.tech/topics/aws-fargate.md>), [Serverless](<https://devfeed.tech/topics/serverless.md>), [container](<https://devfeed.tech/topics/container.md>), [CI/CD](<https://devfeed.tech/topics/cicd.md>)

Tags: [configuration](<https://devfeed.tech/tags/configuration.md>), [containers](<https://devfeed.tech/tags/containers.md>), [deploy](<https://devfeed.tech/tags/deploy.md>), [dockerfile](<https://devfeed.tech/tags/dockerfile.md>), [environment-variables](<https://devfeed.tech/tags/environment-variables.md>), [jobs](<https://devfeed.tech/tags/jobs.md>), [kafka](<https://devfeed.tech/tags/kafka.md>), [memory](<https://devfeed.tech/tags/memory.md>), [metrics](<https://devfeed.tech/tags/metrics.md>), [observability](<https://devfeed.tech/tags/observability.md>), [public-beta](<https://devfeed.tech/tags/public-beta.md>), [queues](<https://devfeed.tech/tags/queues.md>), [rabbitmq](<https://devfeed.tech/tags/rabbitmq.md>), [self-hosted](<https://devfeed.tech/tags/self-hosted.md>), [vercel](<https://devfeed.tech/tags/vercel.md>)

### AI overview

Vercel Daemons entered public beta, enabling long-running worker processes to poll queues, databases, and third-party systems without an HTTP server. Daemons run as containers alongside an app; Vercel builds the image, maintains configured regional instance counts, and restarts instances that exit or crash. Setup uses a Dockerfile or Containerfile and a daemons configuration entry.

### Source excerpt

Vercel Daemons is now in public beta, allowing you to run long-running processes that pull and execute work from Vercel Queues, databases, or third-party systems without requiring an HTTP server: Consumers using Vercel Queues poll mode, Celery, BullMQ, RabbitMQ, or Kafka. Temporal or Cadence workers that long-poll their task queues. Self-hosted CI runners for GitHub Actions, GitLab, or CircleCI that poll for jobs without requiring inbound connections. Daemons run containers on Fluid compute and deploy alongside your app in the same project. Vercel builds your image and maintains the instance count you configure in each region, restarting instances that exit or crash. Get started by packaging your application and dependencies in a Dockerfile or Containerfile, then adding a daemons entry to one configuration file at your project root. This example uses worker/Dockerfile to run one Celery worker in iad1 (Washington, D.C.): Set any connection details your worker needs in your project's production environment variables, then deploy to production. Vercel starts the configured instances, and their output appears in your project's Logs. CPU and memory metrics are available with Observability Plus. Learn more in the Vercel Daemons documentation. Read more

## Message Queues Explained: How They Work & Why

DevFeed: [Message Queues Explained: How They Work & Why](<https://devfeed.tech/articles/message-queues-explained-how-they-work-why-87507.md>)

Original publisher: [Read original article](<https://talent500.com/blog/message-queues/>)

Author: Kashif Khan

Published: 2026-10-15T02:16:52Z

Content type: tutorial

Language: en

Sources: [Talent500](<https://devfeed.tech/sources/backend-archives-talent500-blog.md>)

Topics: [Messaging](<https://devfeed.tech/topics/messaging.md>), [Publish-subscribe pattern](<https://devfeed.tech/topics/pubsub.md>), [Apache Kafka](<https://devfeed.tech/topics/apache-kafka.md>), [Amazon Simple Queue Service (SQS)](<https://devfeed.tech/topics/amazon-simple-queue-service-sqs.md>), [RabbitMQ](<https://devfeed.tech/topics/rabbitmq.md>)

Tags: [amazon-sqs](<https://devfeed.tech/tags/amazon-sqs.md>), [apache](<https://devfeed.tech/tags/apache.md>), [apache-kafka](<https://devfeed.tech/tags/apache-kafka.md>), [asynchronous-communication](<https://devfeed.tech/tags/asynchronous-communication.md>), [azure-service-bus](<https://devfeed.tech/tags/azure-service-bus.md>), [backend](<https://devfeed.tech/tags/backend.md>), [background-job-processing](<https://devfeed.tech/tags/background-job-processing.md>), [benefits-of-message-queues](<https://devfeed.tech/tags/benefits-of-message-queues.md>), [dead-letter-queue](<https://devfeed.tech/tags/dead-letter-queue.md>), [distributed-systems](<https://devfeed.tech/tags/distributed-systems.md>), [event-streaming](<https://devfeed.tech/tags/event-streaming.md>), [google-cloud-pub-sub](<https://devfeed.tech/tags/google-cloud-pub-sub.md>), [how-message-queues-work](<https://devfeed.tech/tags/how-message-queues-work.md>), [message-broker](<https://devfeed.tech/tags/message-broker.md>), [message-prioritization](<https://devfeed.tech/tags/message-prioritization.md>), [message-producers-and-consumers](<https://devfeed.tech/tags/message-producers-and-consumers.md>), [message-queue](<https://devfeed.tech/tags/message-queue.md>), [message-queue-components](<https://devfeed.tech/tags/message-queue-components.md>), [message-queue-implementation](<https://devfeed.tech/tags/message-queue-implementation.md>), [message-queue-vs-database](<https://devfeed.tech/tags/message-queue-vs-database.md>), [message-queue-vs-message-bus](<https://devfeed.tech/tags/message-queue-vs-message-bus.md>), [message-queue-vs-pub-sub](<https://devfeed.tech/tags/message-queue-vs-pub-sub.md>), [message-queue-vs-web-services](<https://devfeed.tech/tags/message-queue-vs-web-services.md>), [message-queues](<https://devfeed.tech/tags/message-queues.md>), [message-queuing-as-a-service](<https://devfeed.tech/tags/message-queuing-as-a-service.md>), [message-routing](<https://devfeed.tech/tags/message-routing.md>), [microservices-messaging](<https://devfeed.tech/tags/microservices-messaging.md>), [point-to-point-messaging](<https://devfeed.tech/tags/point-to-point-messaging.md>), [publish-subscribe-messaging](<https://devfeed.tech/tags/publish-subscribe-messaging.md>), [python-message-queue](<https://devfeed.tech/tags/python-message-queue.md>), [queues](<https://devfeed.tech/tags/queues.md>), [rabbitmq](<https://devfeed.tech/tags/rabbitmq.md>), [types-of-message-queues](<https://devfeed.tech/tags/types-of-message-queues.md>)

### AI overview

This tutorial explains message queues as a way for applications and services to communicate asynchronously. It covers producers, consumers, routing, acknowledgements, retries, dead letter queues, queue and publish-subscribe models, and uses such as background jobs and microservices. It also introduces Kafka and managed cloud messaging services.

### Source excerpt

A message queue enables applications and services to exchange data asynchronously without depending on immediate responses. Explore how message queues work, their types, key components, benefits, and popular tools like RabbitMQ, Apache Kafka, and Amazon SQS for building scalable, reliable systems. The post Message Queues Explained: How They Work & Why appeared first on Talent500 blog.

## The Strange Programming Language That Helped Build WhatsApp

DevFeed: [The Strange Programming Language That Helped Build WhatsApp](<https://devfeed.tech/articles/the-strange-programming-language-that-helped-build-whatsapp-62276.md>)

Original publisher: [Read original article](<https://hackernoon.com/the-strange-programming-language-that-helped-build-whatsapp?source=rss>)

Author: Bruce Li

Published: 2026-09-29T19:00:36Z

Content type: article

Language: en

Sources: [HackerNoon](<https://devfeed.tech/sources/hackernoon.md>)

Topics: [Erlang](<https://devfeed.tech/topics/erlang.md>), [Programming language](<https://devfeed.tech/topics/programming-language.md>), [Programming](<https://devfeed.tech/topics/programming.md>)

Tags: [app](<https://devfeed.tech/tags/app.md>), [discord](<https://devfeed.tech/tags/discord.md>), [elixir](<https://devfeed.tech/tags/elixir.md>), [erlang](<https://devfeed.tech/tags/erlang.md>), [gleam](<https://devfeed.tech/tags/gleam.md>), [hackernoon-top-story](<https://devfeed.tech/tags/hackernoon-top-story.md>), [language](<https://devfeed.tech/tags/language.md>), [programming-language](<https://devfeed.tech/tags/programming-language.md>), [rabbitmq](<https://devfeed.tech/tags/rabbitmq.md>), [scalability](<https://devfeed.tech/tags/scalability.md>), [whatsapp](<https://devfeed.tech/tags/whatsapp.md>)

### AI overview

A narrative account of Erlang's origins and its role in supporting WhatsApp at large scale. The supplied excerpt says WhatsApp handled tens of billions of messages a day with an engineering staff of around fifty, and traces Erlang to a Swedish telecom lab in the 1980s.

### Source excerpt

Erlang: a programming language built in a Swedish telecom lab in the 1980s, ended up running the biggest messaging app WhatsApp. Told by its co-creator.

## How a RabbitMQ TLS mismatch burned one CPU core before AMQP negotiation

DevFeed: [How a RabbitMQ TLS mismatch burned one CPU core before AMQP negotiation](<https://devfeed.tech/articles/how-a-rabbitmq-tls-mismatch-burned-one-cpu-core-before-amqp-negotiation-60584.md>)

Original publisher: [Read original article](<https://hackernoon.com/how-a-rabbitmq-tls-mismatch-burned-one-cpu-core-before-amqp-negotiation?source=rss>)

Author: Ahmed Tariq

Published: 2026-09-27T12:27:00Z

Content type: article

Language: en

Sources: [HackerNoon](<https://devfeed.tech/sources/hackernoon.md>)

Topics: [RabbitMQ](<https://devfeed.tech/topics/rabbitmq.md>), [TLS (Transport Layer Security)](<https://devfeed.tech/topics/tls.md>)

Tags: [aks](<https://devfeed.tech/tags/aks.md>), [aks-rabbitmq-connection](<https://devfeed.tech/tags/aks-rabbitmq-connection.md>), [backend](<https://devfeed.tech/tags/backend.md>), [kubernetes-net-cpu](<https://devfeed.tech/tags/kubernetes-net-cpu.md>), [kubernetes-protocol-debugging](<https://devfeed.tech/tags/kubernetes-protocol-debugging.md>), [net](<https://devfeed.tech/tags/net.md>), [net-async-void-startup](<https://devfeed.tech/tags/net-async-void-startup.md>), [net-cpu-throttling](<https://devfeed.tech/tags/net-cpu-throttling.md>), [production](<https://devfeed.tech/tags/production.md>), [rabbitmq](<https://devfeed.tech/tags/rabbitmq.md>), [rabbitmq-tls-configuration](<https://devfeed.tech/tags/rabbitmq-tls-configuration.md>), [tls](<https://devfeed.tech/tags/tls.md>), [tls-configuration-error](<https://devfeed.tech/tags/tls-configuration-error.md>), [tls-troubleshooting](<https://devfeed.tech/tags/tls-troubleshooting.md>)

### AI overview

A production incident pinned a .NET thread to a CPU core while services attempted plaintext connections to a TLS-only RabbitMQ listener. The investigation traced the mismatch to omitted AMQP TLS configuration and an older framework package that did not pass the setting to the connection factory. The article describes separating CPU behavior, network reachability, protocol negotiation, and startup tests, with seven bytes on the wire revealing the fault.

### Source excerpt

A production RabbitMQ TLS mismatch pinned one .NET thread to a CPU core. Seven bytes on the wire exposed the real fault.

## New in Symfony 8.2: Faster Messenger Workers

DevFeed: [New in Symfony 8.2: Faster Messenger Workers](<https://devfeed.tech/articles/new-in-symfony-8-2-faster-messenger-workers-59722.md>)

Original publisher: [Read original article](<https://symfony.com/blog/new-in-symfony-8-2-faster-messenger-workers>)

Author: Javier Eguiluz

Published: 2026-09-25T07:07:00Z

Content type: release

Language: en

Sources: [Symfony](<https://devfeed.tech/sources/symfony-blog.md>)

Topics: [Symfony](<https://devfeed.tech/topics/symfony.md>), [Concurrency](<https://devfeed.tech/topics/concurrency.md>), [PHP](<https://devfeed.tech/topics/php.md>), [RabbitMQ](<https://devfeed.tech/topics/rabbitmq.md>), [Process](<https://devfeed.tech/topics/process.md>), [Library](<https://devfeed.tech/topics/library.md>)

Tags: [benchmark](<https://devfeed.tech/tags/benchmark.md>), [concurrency](<https://devfeed.tech/tags/concurrency.md>), [delay](<https://devfeed.tech/tags/delay.md>), [parallel](<https://devfeed.tech/tags/parallel.md>), [rabbitmq](<https://devfeed.tech/tags/rabbitmq.md>), [retry](<https://devfeed.tech/tags/retry.md>), [symfony](<https://devfeed.tech/tags/symfony.md>), [workers](<https://devfeed.tech/tags/workers.md>)

### AI overview

Symfony 8.2 adds concurrent Messenger workers using child processes or threads, with benchmarked speedups for individual messages. It also improves RabbitMQ consumption through broker-side prefetching and reduces the number of delay queues created by retry strategies through rounded delay values.

### Source excerpt

Parallel Message Processing Contributed by Nicolas Grekas in #63650...

## Debezium 3.7.0.Beta2 Released

DevFeed: [Debezium 3.7.0.Beta2 Released](<https://devfeed.tech/articles/debezium-3-7-0-beta2-released-47527.md>)

Original publisher: [Read original article](<https://debezium.io/blog/2026/09/15/debezium-3-7-beta2-released/>)

Author: Chris Cranford

Published: 2026-09-15T00:00:00Z

Content type: release

Language: en

Sources: [Debezium](<https://devfeed.tech/sources/debezium-io.md>)

Topics: [SQLite](<https://devfeed.tech/topics/sqlite.md>), [rocksdb](<https://devfeed.tech/topics/rocksdb.md>), [RabbitMQ](<https://devfeed.tech/topics/rabbitmq.md>), [TLS (Transport Layer Security)](<https://devfeed.tech/topics/tls.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [Library](<https://devfeed.tech/topics/library.md>), [JSON](<https://devfeed.tech/topics/json.md>), [OpenAI](<https://devfeed.tech/topics/openai.md>)

Tags: [announce](<https://devfeed.tech/tags/announce.md>), [embeddings](<https://devfeed.tech/tags/embeddings.md>), [json](<https://devfeed.tech/tags/json.md>), [rabbitmq](<https://devfeed.tech/tags/rabbitmq.md>), [release](<https://devfeed.tech/tags/release.md>), [rocksdb](<https://devfeed.tech/tags/rocksdb.md>), [sqlite](<https://devfeed.tech/tags/sqlite.md>), [tls](<https://devfeed.tech/tags/tls.md>)

### AI overview

Debezium 3.7.0.Beta2 introduces official Milvus and SQLite source connectors and the Debezium CLI. The release also adds platform alerting, a RocksDB-backed cache, OpenAI embeddings transformations, improved metric rendering and snapshot throughput, TLS support for RabbitMQ Stream, and array mapping to SingleStore JSON columns.

### Source excerpt

As the leaves start to turn, we're pleased to announce Debezium 3.7.0.Beta2, a release that delivers the first official release of the Milvus and SQLite source connectors and the Debezium CLI, alongside new capabilities across the platform, core library, and connectors. Among the highlights, the Debezium Platform gains alerting, the reselect columns post processor gets a RocksDB-backed cache, a new embeddings transformation supports OpenAI models, and a rework of the JMX LastEvent metric rendering delivers improved snapshot throughput. Debezium Server adds TLS and mutual TLS support for the RabbitMQ Stream sink, and the JDBC sink can now map arrays to SingleStore JSON columns. Read on for the full details! Read more...

## How LlamaIndex uses Temporal to scale reliable document orchestration

DevFeed: [How LlamaIndex uses Temporal to scale reliable document orchestration](<https://devfeed.tech/articles/how-llamaindex-uses-temporal-to-scale-reliable-document-orchestration-35908.md>)

Original publisher: [Read original article](<https://temporal.io/blog/llamaindex-uses-temporal-to-scale-reliable-document-orchestration>)

Author: Adrian Lyjak

Published: 2026-09-01T00:00:00Z

Content type: article

Language: en

Sources: [Temporal](<https://devfeed.tech/sources/temporal-blog.md>)

Topics: [llamaindex](<https://devfeed.tech/topics/llamaindex.md>), [Orchestration](<https://devfeed.tech/topics/orchestration.md>), [RabbitMQ](<https://devfeed.tech/topics/rabbitmq.md>), [Concurrency](<https://devfeed.tech/topics/concurrency.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [concurrency](<https://devfeed.tech/tags/concurrency.md>), [llamaindex](<https://devfeed.tech/tags/llamaindex.md>), [orchestration](<https://devfeed.tech/tags/orchestration.md>), [rabbitmq](<https://devfeed.tech/tags/rabbitmq.md>), [scale](<https://devfeed.tech/tags/scale.md>), [temporal](<https://devfeed.tech/tags/temporal.md>), [temporal-voices](<https://devfeed.tech/tags/temporal-voices.md>)

### AI overview

This article explains how LlamaIndex moved document-processing workloads from RabbitMQ to Temporal. It describes the complexity of processing documents page by page and reports that Temporal helped the team improve durability and concurrency while processing tens of millions of pages per day for the Batch API.

### Source excerpt

Learn how LlamaIndex moved from RabbitMQ to Temporal to make LlamaParse more durable, improve concurrency, and process tens of millions of pages per day.

## Using OpenTelemetry to Trace OpenStack Instance Builds Across Services

DevFeed: [Using OpenTelemetry to Trace OpenStack Instance Builds Across Services](<https://devfeed.tech/articles/we-made-an-openstack-cloud-tell-its-own-story-55004.md>)

Original publisher: [Read original article](<https://superuser.openinfra.org/articles/we-made-an-openstack-cloud-tell-its-own-story/>)

Author: Dai Pham Le Gia

Published: 2026-08-17T13:00:01Z

Content type: article

Language: en

Sources: [Superuser](<https://devfeed.tech/sources/superuser.md>)

Topics: [openstack](<https://devfeed.tech/topics/openstack.md>), [OpenTelemetry](<https://devfeed.tech/topics/opentelemetry.md>), [telemetry](<https://devfeed.tech/topics/telemetry.md>), [Cloud](<https://devfeed.tech/topics/cloud.md>), [tracing](<https://devfeed.tech/topics/tracing.md>), [control-plane](<https://devfeed.tech/topics/control-plane.md>), [RabbitMQ](<https://devfeed.tech/topics/rabbitmq.md>)

Tags: [cloud](<https://devfeed.tech/tags/cloud.md>), [control-plane](<https://devfeed.tech/tags/control-plane.md>), [fpt-smart-cloud](<https://devfeed.tech/tags/fpt-smart-cloud.md>), [logs](<https://devfeed.tech/tags/logs.md>), [metrics](<https://devfeed.tech/tags/metrics.md>), [openstack](<https://devfeed.tech/tags/openstack.md>), [opentelemetry](<https://devfeed.tech/tags/opentelemetry.md>), [opentelemetry-openstack](<https://devfeed.tech/tags/opentelemetry-openstack.md>), [rabbitmq](<https://devfeed.tech/tags/rabbitmq.md>), [signoz](<https://devfeed.tech/tags/signoz.md>), [traces](<https://devfeed.tech/tags/traces.md>), [tracing](<https://devfeed.tech/tags/tracing.md>), [user-stories](<https://devfeed.tech/tags/user-stories.md>)

### AI overview

An OpenStack cloud operator describes how fragmented logs and request IDs made stuck instance builds difficult to investigate across Nova, Neutron, Cinder, Keystone, RabbitMQ, and compute nodes. The article explains that OpenTelemetry was used to connect logs, metrics, and traces so the build path could be followed across services.

### Source excerpt

Logs, metrics and traces were everywhere, but the story was fragmented. Here's how we used OpenTelemetry to connect the pieces and let OpenStack tell its own story.

## Specula: Scaling formal specifications for autonomous model checking of system code

DevFeed: [Specula: Scaling formal specifications for autonomous model checking of system code](<https://devfeed.tech/articles/specula-scaling-formal-specifications-for-autonomous-model-checking-of-system-code-41853.md>)

Original publisher: [Read original article](<https://muratbuffalo.blogspot.com/2026/08/specula-scaling-formal-specifications.html>)

Author: Murat (noreply@blogger.com)

Published: 2026-08-12T21:33:44Z

Content type: opinion

Language: en

Sources: [Metadata](<https://devfeed.tech/sources/metadata.md>)

Topics: [Concurrency](<https://devfeed.tech/topics/concurrency.md>), [Scalability](<https://devfeed.tech/topics/scalability.md>), [bug](<https://devfeed.tech/topics/bug.md>), [Code](<https://devfeed.tech/topics/code.md>), [systems](<https://devfeed.tech/topics/systems.md>), [Software](<https://devfeed.tech/topics/software.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>), [Network](<https://devfeed.tech/topics/network.md>), [C](<https://devfeed.tech/topics/c.md>), [Erlang](<https://devfeed.tech/topics/erlang.md>), [MongoDB](<https://devfeed.tech/topics/mongodb.md>), [Rust](<https://devfeed.tech/topics/rust.md>)

Tags: [agentic](<https://devfeed.tech/tags/agentic.md>), [bug](<https://devfeed.tech/tags/bug.md>), [code](<https://devfeed.tech/tags/code.md>), [concurrency](<https://devfeed.tech/tags/concurrency.md>), [developers](<https://devfeed.tech/tags/developers.md>), [distributed](<https://devfeed.tech/tags/distributed.md>), [erlang](<https://devfeed.tech/tags/erlang.md>), [etcd](<https://devfeed.tech/tags/etcd.md>), [formal-methods](<https://devfeed.tech/tags/formal-methods.md>), [mongodb](<https://devfeed.tech/tags/mongodb.md>), [network](<https://devfeed.tech/tags/network.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [paper-review](<https://devfeed.tech/tags/paper-review.md>), [rabbitmq](<https://devfeed.tech/tags/rabbitmq.md>), [rust](<https://devfeed.tech/tags/rust.md>), [scaling](<https://devfeed.tech/tags/scaling.md>), [tla](<https://devfeed.tech/tags/tla.md>)

### AI overview

An opinionated analysis of Specula, an agentic system that automatically derives TLA+ specifications from software, validates them against code, model-checks for concurrency bugs, and generates integration tests. The article discusses reported results across 48 open-source distributed and concurrent systems, including 249 bugs found, while also raising unresolved questions about the approach.

### Source excerpt

Specula is an agentic system that automates the process of software bug finding through authoring and model-checking a spec for the code. It derives TLA+ specifications automatically from the code, checks code-spec conformance through trace validation, model checks the spec to find concurrency bugs, and reproduces the bug at the code layer by writing integration tests with precise timing. I remember reading the Daikon paper "Quickly detecting relevant program invariants" in 2000 and getting impressed by it, and here we are after 26 years, solving the end-to-end problem much better than I ever thought would be possible in a push-button manner in the year of our lord 2026. But somehow, I am still somewhat unsatisfied with the paper. This may be me being hypercritical and trying to get more out of the paper by arguing with it. So bear with me until I resolve (or learn to accept) these problems over time. I know many of the authors of the Specula work, and respect them, and I know they won't take my critiques about the larger problem in a wrong way... I am trying to make sense of the terrain myself. So, let's look at what Specula gets right, its major contributions, and then dive into my unresolved questions and existential thinking about the terrain. Why is Specula an Impressive Achievement Specula is run on "slices of" 48 complex open-source distributed and concurrent systems including MongoDB, Microsoft's SONiC network OS, GCC's libgomp, Etcd, and RabbitMQ's ra. It found 249 bugs, 207 of them new. The 48 systems span 7 languages, from C to Erlang to Rust. This is very impressive, and it earns the "scaling" claim in the title of the paper. Hand-crafting TLA+ specifications may take weeks (especially for unfamiliar code bases), and Specula completes end-to-end checks in 1.4 to 9.8 hours at a median token cost of 57 dollars per system. Did I mention this is all push-button? Developers just review the end results. They may not even have to look at the TLA+ specs, and the

## Kafka vs RabbitMQ vs SQS

DevFeed: [Kafka vs RabbitMQ vs SQS](<https://devfeed.tech/articles/kafka-vs-rabbitmq-vs-sqs-33572.md>)

Original publisher: [Read original article](<https://blog.algomaster.io/p/kafka-vs-rabbitmq-vs-sqs>)

Author: Ashish Pratap Singh

Published: 2026-07-02T03:31:11Z

Content type: comparison

Language: en

Sources: [AlgoMaster Newsletter](<https://devfeed.tech/sources/algomaster-newsletter.md>)

Topics: [Amazon Simple Queue Service (SQS)](<https://devfeed.tech/topics/amazon-simple-queue-service-sqs.md>), [Apache Kafka](<https://devfeed.tech/topics/apache-kafka.md>), [RabbitMQ](<https://devfeed.tech/topics/rabbitmq.md>), [Messaging](<https://devfeed.tech/topics/messaging.md>), [Back end](<https://devfeed.tech/topics/backend.md>)

Tags: [backend](<https://devfeed.tech/tags/backend.md>), [kafka](<https://devfeed.tech/tags/kafka.md>), [messaging](<https://devfeed.tech/tags/messaging.md>), [queues](<https://devfeed.tech/tags/queues.md>), [rabbitmq](<https://devfeed.tech/tags/rabbitmq.md>), [sqs](<https://devfeed.tech/tags/sqs.md>)

### AI overview

This comparison examines Kafka, RabbitMQ, and Amazon SQS for asynchronous systems. It explains that Kafka uses an append-only log with consumer offsets and replay, RabbitMQ routes messages through exchanges and queues with acknowledgments, and SQS provides managed queue-based messaging that consumers poll.

### Source excerpt

Most backend systems eventually need one service to hand off work to another asynchronously.

## Community Update - Week 26 2026

DevFeed: [Community Update - Week 26 2026](<https://devfeed.tech/articles/community-update-week-26-2026-31149.md>)

Original publisher: [Read original article](<https://communityblog.fedoraproject.org/community-update-week-26-2026/>)

Author: zlopez

Published: 2026-06-26T10:00:00Z

Content type: article

Language: en

Sources: [Fedora Community Blog](<https://devfeed.tech/sources/fedora-community-blog.md>)

Topics: [Fedora](<https://devfeed.tech/topics/fedora.md>), [release engineering](<https://devfeed.tech/topics/release-engineering.md>), [centos](<https://devfeed.tech/topics/centos.md>), [Ansible](<https://devfeed.tech/topics/ansible.md>), [RabbitMQ](<https://devfeed.tech/topics/rabbitmq.md>)

Tags: [2026](<https://devfeed.tech/tags/2026.md>), [ansible](<https://devfeed.tech/tags/ansible.md>), [centos-stream](<https://devfeed.tech/tags/centos-stream.md>), [cle-community-update](<https://devfeed.tech/tags/cle-community-update.md>), [community-update](<https://devfeed.tech/tags/community-update.md>), [fedora-project-community](<https://devfeed.tech/tags/fedora-project-community.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [network](<https://devfeed.tech/tags/network.md>), [rabbitmq](<https://devfeed.tech/tags/rabbitmq.md>), [release-engineering](<https://devfeed.tech/tags/release-engineering.md>)

### AI overview

The CLE Team reports on Fedora and CentOS infrastructure work during 22-26 June 2026. The update covers service operations, packaging and dependency rebuilds, signing infrastructure changes, API-key rotation, DHCP migration work, staging issues involving RabbitMQ, and hardware firmware discussions.

### Source excerpt

This is a report created by CLE Team, which is a team containing community members working in various Fedora groups for example Infrastructure, Release Engineering, Quality etc. This team is also moving forward some initiatives inside Fedora project. Week: 22 - 26 June 2026 Fedora Infrastructure This team is taking care of day to day [...] The post Community Update - Week 26 2026 appeared first on Fedora Community Blog.

## You Don't Need Redis, Postgres Already Has Pub/Sub

DevFeed: [You Don't Need Redis, Postgres Already Has Pub/Sub](<https://devfeed.tech/articles/you-don-t-need-redis-postgres-already-has-pub-sub-47827.md>)

Original publisher: [Read original article](<https://www.prisma.io/blog/you-dont-need-redis-postgres-already-has-pub-sub>)

Author: Ankur Datta

Published: 2026-05-04T00:00:00Z

Content type: tutorial

Language: en

Sources: [Prisma](<https://devfeed.tech/sources/prisma-blog.md>)

Topics: [PostgreSQL](<https://devfeed.tech/topics/postgresql.md>), [Publish-subscribe pattern](<https://devfeed.tech/topics/pubsub.md>), [TypeScript](<https://devfeed.tech/topics/typescript.md>), [Bun](<https://devfeed.tech/topics/bun.md>), [Prisma](<https://devfeed.tech/topics/prisma.md>)

Tags: [bun](<https://devfeed.tech/tags/bun.md>), [kafka](<https://devfeed.tech/tags/kafka.md>), [postgres](<https://devfeed.tech/tags/postgres.md>), [postgresql](<https://devfeed.tech/tags/postgresql.md>), [prisma](<https://devfeed.tech/tags/prisma.md>), [rabbitmq](<https://devfeed.tech/tags/rabbitmq.md>), [real-time](<https://devfeed.tech/tags/real-time.md>), [redis](<https://devfeed.tech/tags/redis.md>), [typescript](<https://devfeed.tech/tags/typescript.md>)

### AI overview

A tutorial showing how to build a lightweight real-time publish/subscribe application with PostgreSQL, Bun, and Prisma Postgres. It explains how PostgreSQL LISTEN and NOTIFY can handle workflows such as dashboard refreshes, cache invalidation, worker notifications, and application event reactions without a separate message broker.

### Source excerpt

Postgres includes a lightweight Pub/Sub mechanism through LISTEN and NOTIFY. In this post, you'll build a small real-time Pub/Sub app with Bun, pg, and Prisma Postgres.

## The Quarkus Edge: How Real Customers Achieve Speed, Performance, and Agility

DevFeed: [The Quarkus Edge: How Real Customers Achieve Speed, Performance, and Agility](<https://devfeed.tech/articles/the-quarkus-edge-how-real-customers-achieve-speed-performance-and-agility-43607.md>)

Original publisher: [Read original article](<https://quarkus.io/blog/idc-customer-case-studies/>)

Author: Jeff Beck (https://twitter.com/aJeffBeck)

Published: 2025-02-19T00:00:00Z

Content type: article

Language: en

Sources: [Quarkus - Supersonic Subatomic Java](<https://devfeed.tech/sources/quarkus-supersonic-subatomic-java.md>)

Topics: [Quarkus](<https://devfeed.tech/topics/quarkus.md>), [Benchmark](<https://devfeed.tech/topics/benchmark.md>), [cloud-infrastructure](<https://devfeed.tech/topics/cloud-infrastructure.md>), [event driven](<https://devfeed.tech/topics/event-driven.md>), [DevOps](<https://devfeed.tech/topics/devops.md>)

Tags: [benchmarking](<https://devfeed.tech/tags/benchmarking.md>), [cloud-infrastructure](<https://devfeed.tech/tags/cloud-infrastructure.md>), [cloud-native-kubernetes](<https://devfeed.tech/tags/cloud-native-kubernetes.md>), [developer-productivity](<https://devfeed.tech/tags/developer-productivity.md>), [event-driven](<https://devfeed.tech/tags/event-driven.md>), [kafka](<https://devfeed.tech/tags/kafka.md>), [quarkus](<https://devfeed.tech/tags/quarkus.md>), [rabbitmq](<https://devfeed.tech/tags/rabbitmq.md>)

### AI overview

This article summarizes an IDC whitepaper featuring three customer case studies on Quarkus in production. It describes reported gains in CPU efficiency, startup time, developer productivity, cloud infrastructure costs, latency, and integrations with Kubernetes-ready containerized and event-driven architectures.

### Source excerpt

Download the full report If you're part of the Quarkus community, you already know it's fast, lightweight, and designed for cloud-native workloads. But have you ever wondered how other organizations are using Quarkus in production? A new IDC whitepaper, The Quarkus Edge: How Real Customers Achieve Speed, Performance, and Agility, showcases how three organizations have transformed their developer productivity, infrastructure efficiency, and business agility with Quarkus. These case studies highlight why organizations are choosing Quarkus and how it's driving measurable results in industries like telecommunications, transportation, and banking. If you're looking for compelling, real-world stories to share with your peers, leadership, or decision-makers, this report is exactly what you need. Let's dive into the highlights. Why Organizations Are Choosing Quarkus The report highlights several common drivers behind Quarkus adoption: ✅ Massive Performance Gains: up to 10x CPU cost reduction and 85% faster start-up times. ✅ Cloud-Native & Kubernetes-Ready: built for containerization and event-driven architectures. ✅ Developer Productivity Boosts: live coding, lower memory footprint, and seamless integration w/ DevOps workflows. ✅ Lower Costs: significant reduction in cloud infrastructure spend, especially for high-throughput, low-latency applications. Case Study #1 (Telco): Powering Edge & IoT with Quarkus A major telecommunications company needed to meet 5G and edge computing demands. After benchmarking against alternatives like Spring WebFlux and Vert.x, they selected Quarkus for its CPU efficiency and latency performance. 🔹 10x reduction in CPU costs, crucial for high-throughput workloads. 🔹 Lower latency, enabling real-time IoT and edge applications. 🔹 Seamless integration with Kafka, RabbitMQ, and event-driven architectures. Case Study #2 (Transportation): Faster Event-Driven Services A global transportation services provider turned to Quarkus for its event-driven arch

## Enhancing Distributed System Load Shedding with TCP Congestion Control Algorithm

DevFeed: [Enhancing Distributed System Load Shedding with TCP Congestion Control Algorithm](<https://devfeed.tech/articles/enhancing-distributed-system-load-shedding-with-tcp-congestion-control-algorithm-47469.md>)

Original publisher: [Read original article](<https://engineering.zalando.com/posts/2024/04/enhancing-distributed-system-load-shedding-with-tcp-congestion-control-algorithm.html>)

Author: Andrew Meleka

Published: 2024-04-22T22:00:00Z

Content type: article

Language: en

Sources: [Zalando](<https://devfeed.tech/sources/zalando-engineering-blog.md>)

Topics: [systems](<https://devfeed.tech/topics/systems.md>), [event driven](<https://devfeed.tech/topics/event-driven.md>), [Apache Kafka](<https://devfeed.tech/topics/apache-kafka.md>), [RabbitMQ](<https://devfeed.tech/topics/rabbitmq.md>), [Microservices](<https://devfeed.tech/topics/microservices.md>), [API](<https://devfeed.tech/topics/api.md>), [software-architecture](<https://devfeed.tech/topics/software-architecture.md>)

Tags: [backend](<https://devfeed.tech/tags/backend.md>), [distributed](<https://devfeed.tech/tags/distributed.md>), [event-driven](<https://devfeed.tech/tags/event-driven.md>), [kafka](<https://devfeed.tech/tags/kafka.md>), [microservices](<https://devfeed.tech/tags/microservices.md>), [queues](<https://devfeed.tech/tags/queues.md>), [rabbitmq](<https://devfeed.tech/tags/rabbitmq.md>), [scalability](<https://devfeed.tech/tags/scalability.md>), [system](<https://devfeed.tech/tags/system.md>), [tcp](<https://devfeed.tech/tags/tcp.md>), [zalando](<https://devfeed.tech/tags/zalando.md>)

### AI overview

This article explains how Zalando addressed load shedding in an event-driven customer-communications system. It describes controlling event ingestion and prioritizing requests tied to critical business operations, using an approach inspired by TCP congestion control.

### Source excerpt

Load shedding is a common problem in event driven systems. But even more problematic when that load needs to be prioritized according to different priorities. Here we present how we solved this problem using a well known algorithm that is used in TCP congestion control.

## Hopping into spring with Chainguard's RabbitMQ Image

DevFeed: [Hopping into spring with Chainguard's RabbitMQ Image](<https://devfeed.tech/articles/hopping-into-spring-with-chainguard-s-rabbitmq-image-13082.md>)

Original publisher: [Read original article](<https://www.chainguard.dev/unchained/hopping-into-spring-with-chainguards-rabbitmq-image>)

Published: 2023-02-24T00:00:00Z

Content type: article

Language: en

Sources: [Chainguard: Unchained](<https://devfeed.tech/sources/chainguard-unchained.md>)

Topics: [chainguard images](<https://devfeed.tech/topics/chainguard-images.md>), [Messaging](<https://devfeed.tech/topics/messaging.md>), [Security](<https://devfeed.tech/topics/security.md>), [Cloud Native Ecosystem](<https://devfeed.tech/topics/cloud-native-ecosystem.md>), [container](<https://devfeed.tech/topics/container.md>), [vulnerability scanning](<https://devfeed.tech/topics/vulnerability-scanning.md>), [Erlang](<https://devfeed.tech/topics/erlang.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>), [GitHub](<https://devfeed.tech/topics/github.md>)

Tags: [base-images](<https://devfeed.tech/tags/base-images.md>), [bazel](<https://devfeed.tech/tags/bazel.md>), [chainguard](<https://devfeed.tech/tags/chainguard.md>), [chainguard-images](<https://devfeed.tech/tags/chainguard-images.md>), [container-images](<https://devfeed.tech/tags/container-images.md>), [containers](<https://devfeed.tech/tags/containers.md>), [cosign](<https://devfeed.tech/tags/cosign.md>), [cves](<https://devfeed.tech/tags/cves.md>), [documentation](<https://devfeed.tech/tags/documentation.md>), [image](<https://devfeed.tech/tags/image.md>), [messaging](<https://devfeed.tech/tags/messaging.md>), [minimal-image](<https://devfeed.tech/tags/minimal-image.md>), [provenance](<https://devfeed.tech/tags/provenance.md>), [rabbitmq](<https://devfeed.tech/tags/rabbitmq.md>), [rabbitmq-image](<https://devfeed.tech/tags/rabbitmq-image.md>), [sboms](<https://devfeed.tech/tags/sboms.md>), [secure-images](<https://devfeed.tech/tags/secure-images.md>), [security](<https://devfeed.tech/tags/security.md>), [slsa](<https://devfeed.tech/tags/slsa.md>), [software-supply-chain](<https://devfeed.tech/tags/software-supply-chain.md>)

### AI overview

Chainguard announces a Chainguard Image for RabbitMQ, an open-source message broker used in cloud-native applications. The image is built from source on Wolfi, with custom Erlang and OTP components, continuous patching, minimal CVEs, SBOMs, signatures, and SLSA Build Level 2 provenance.

### Source excerpt

Unlock advanced messaging capabilities with Chainguard's RabbitMQ image, designed for robustness and security.

## WeRoad migrated from Auth0 to FusionAuth

DevFeed: [WeRoad migrated from Auth0 to FusionAuth](<https://devfeed.tech/articles/weroad-migrated-from-auth0-to-fusionauth-43524.md>)

Original publisher: [Read original article](<https://fusionauth.io/blog/weroad-migrated-from-auth0-to-fusionauth>)

Author: Dan Moore

Published: 2021-11-03T00:00:00Z

Content type: article

Language: en

Sources: [FusionAuth](<https://devfeed.tech/sources/fusionauth-blog.md>)

Topics: [Back end](<https://devfeed.tech/topics/backend.md>), [OAuth](<https://devfeed.tech/topics/oauth.md>), [Node.js](<https://devfeed.tech/topics/node-js.md>), [Laravel](<https://devfeed.tech/topics/laravel.md>), [RabbitMQ](<https://devfeed.tech/topics/rabbitmq.md>), [Software](<https://devfeed.tech/topics/software.md>), [Auth0](<https://devfeed.tech/topics/auth0.md>), [Database](<https://devfeed.tech/topics/database.md>), [Website](<https://devfeed.tech/topics/website.md>), [Google](<https://devfeed.tech/topics/google.md>)

Tags: [auth](<https://devfeed.tech/tags/auth.md>), [backend](<https://devfeed.tech/tags/backend.md>), [community](<https://devfeed.tech/tags/community.md>), [google](<https://devfeed.tech/tags/google.md>), [laravel](<https://devfeed.tech/tags/laravel.md>), [node](<https://devfeed.tech/tags/node.md>), [oauth](<https://devfeed.tech/tags/oauth.md>), [rabbitmq](<https://devfeed.tech/tags/rabbitmq.md>), [software](<https://devfeed.tech/tags/software.md>), [software-engineer](<https://devfeed.tech/tags/software-engineer.md>)

### AI overview

An interview with WeRoad's senior software engineer explains how the company uses FusionAuth for user management, roles, credential login, and Google social sign-on. It also describes the Catalog platform, its Laravel backend, APIs, database-driven pages, RabbitMQ integrations, and migration from a Node.js monolith to services.

### Source excerpt

WeRoad brings travelers together for live-changing travel and used FusionAuth to simplify their auth infrastructure.

## Aeraki -- Manage Any Layer-7 Protocol in Istio Service Mesh

DevFeed: [Aeraki -- Manage Any Layer-7 Protocol in Istio Service Mesh](<https://devfeed.tech/articles/aeraki-manage-any-layer-7-protocol-in-istio-service-mesh-48725.md>)

Original publisher: [Read original article](<https://istio.io/latest/blog/2021/aeraki/>)

Author: Huabing Zhao (Tencent)

Published: 2021-09-28T00:00:00Z

Content type: article

Language: en

Sources: [Istio](<https://devfeed.tech/sources/istio-blog.md>)

Topics: [istio](<https://devfeed.tech/topics/istio.md>), [service-mesh](<https://devfeed.tech/topics/service-mesh.md>), [software-architecture](<https://devfeed.tech/topics/software-architecture.md>), [Microservices](<https://devfeed.tech/topics/microservices.md>), [protocols](<https://devfeed.tech/topics/protocols.md>), [Remote Procedure Call (RPC)](<https://devfeed.tech/topics/rpc.md>), [Messaging](<https://devfeed.tech/topics/messaging.md>), [Cache](<https://devfeed.tech/topics/cache.md>), [Database](<https://devfeed.tech/topics/database.md>)

Tags: [aeraki](<https://devfeed.tech/tags/aeraki.md>), [architecture](<https://devfeed.tech/tags/architecture.md>), [database](<https://devfeed.tech/tags/database.md>), [envoy](<https://devfeed.tech/tags/envoy.md>), [grpc](<https://devfeed.tech/tags/grpc.md>), [istio](<https://devfeed.tech/tags/istio.md>), [kafka](<https://devfeed.tech/tags/kafka.md>), [mesh](<https://devfeed.tech/tags/mesh.md>), [microservices](<https://devfeed.tech/tags/microservices.md>), [protocol](<https://devfeed.tech/tags/protocol.md>), [rabbitmq](<https://devfeed.tech/tags/rabbitmq.md>), [redis](<https://devfeed.tech/tags/redis.md>), [service-mesh](<https://devfeed.tech/tags/service-mesh.md>), [services](<https://devfeed.tech/tags/services.md>)

### AI overview

Aeraki Mesh is an open-source framework that extends Istio service meshes beyond HTTP and gRPC to support traffic management for other Layer-7 protocols. It addresses limitations in Envoy route discovery and proprietary-protocol integration by translating high-level rules into Envoy filter configurations and providing dynamic routing through a MetaProtocol proxy.

### Source excerpt

Aeraki [Air-rah-ki] is the Greek word for 'breeze'. While Istio connects microservices in a service mesh, Aeraki provides a framework to allow Istio to support more layer-7 protocols other than just HTTP and gRPC. We hope this breeze can help Istio sail a little further. Lack of Protocols Support in Service Mesh We are now facing some challenges with service meshes: Istio and other popular service mesh implementations have very limited support for layer 7 protocols other than HTTP and gRPC. Envoy RDS(Route Discovery Service) is solely designed for HTTP. Other protocols such as Dubbo and Thrift can only use listener in-line routes for traffic management, which breaks existing connections when routes change. It takes a lot of effort to introduce a proprietary protocol into a service mesh. You'll need to write an Envoy filter to handle the traffic in the data plane, and a control plane to manage those Envoys. Those obstacles make it very hard, if not impossible, for users to manage the traffic of other widely-used layer-7 protocols in microservices. For example, in a microservices application, we may have the below protocols: RPC: HTTP, gRPC, Thrift, Dubbo, Proprietary RPC Protocol ... Messaging: Kafka, RabbitMQ ... Cache: Redis, Memcached ... Database: MySQL, PostgreSQL, MongoDB ... Common Layer-7 Protocols Used in Microservices If you have already invested a lot of effort in migrating to a service mesh, of course, you want to get the most out of it -- managing the traffic of all the protocols in your microservices. Aeraki's approach To address these problems, we create an open-source project, Aeraki Mesh, to provide a non-intrusive, extendable way to manage any layer-7 traffic in an Istio service mesh. Aeraki Architecture As this diagram shows, Aeraki Framework consists of the following components: Aeraki: Aeraki provides high-level, user-friendly traffic management rules to operations, translates the rules to envoy filter configurations, and leverages Istio's EnvoyFilter API

## So That One Time You Played With Docker

DevFeed: [So That One Time You Played With Docker](<https://devfeed.tech/articles/so-that-one-time-you-played-with-docker-28115.md>)

Original publisher: [Read original article](<http://fuzzyblog.io/blog/2020/07/20/so-that-one-time-you-played-with-docker.html>)

Author: Fuzzygroup

Published: 2020-07-20T00:00:00Z

Content type: article

Language: en

Sources: [Scott Johnson](<https://devfeed.tech/sources/scott-johnson.md>)

Topics: [Docker](<https://devfeed.tech/topics/docker.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>)

Tags: [cpu](<https://devfeed.tech/tags/cpu.md>), [docker](<https://devfeed.tech/tags/docker.md>), [medical](<https://devfeed.tech/tags/medical.md>), [memcached](<https://devfeed.tech/tags/memcached.md>), [mongo](<https://devfeed.tech/tags/mongo.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [python](<https://devfeed.tech/tags/python.md>), [rabbit](<https://devfeed.tech/tags/rabbit.md>), [rabbitmq](<https://devfeed.tech/tags/rabbitmq.md>), [stack](<https://devfeed.tech/tags/stack.md>), [stop](<https://devfeed.tech/tags/stop.md>), [technical](<https://devfeed.tech/tags/technical.md>), [technical-blog](<https://devfeed.tech/tags/technical-blog.md>), [tooling](<https://devfeed.tech/tags/tooling.md>)

### AI overview

After noticing their machine had slowed, the author ran `docker ps` and found several containers from a medical-field open-source tooling stack still running weeks after helping a friend. They stopped the RabbitMQ, MongoDB, Memcached, worker, and Girder containers by ID with `docker stop`. The excerpt mentions open-source licensing as context but does not explain licensing details.

### Source excerpt

layout: post title: So That One Time You Played with Docker for hte So that one time, at band camp - wait; wrong movie, this is a technical blog post about Docker ... I recently helped a friend doing some federal work in the medical field get a better understanding of Docker and how Docker can mess about with open source licensing. We got up a "open source" stack of tooling using a bunch of heavy weight tools: Mongo Memcached A big Python app Rabbit MQ And then, as you so often do, we finished up and I got distracted by the next bit of crazy nerd-fu that runs about in my life (server down; wifi crisis; son needing help with his PC; who can remember) and then I went back to my desk, closed my terminal prompt and never thought much more about this. Lately I've been noticing some slowness on my machine and I just happened to run docker ps and what do I see but: docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES b93fbedc58d2 data_streamer_to_sqs_ruby "ruby ./main.rb" 29 seconds ago Up 27 seconds nice_torvalds 605da7fe5159 dsarchive/dsa_girder:latest "/bin/sh -c 'sudo -E..." 2 weeks ago Up 3 hours 0.0.0.0:8080->8080/tcp dsa_girder 0b0eb7730fb0 dsarchive/dsa_worker:latest "/bin/sh -c 'sudo -E..." 2 weeks ago Up 3 hours dsa_worker df6fd902c11b memcached:latest "docker-entrypoint.s..." 2 weeks ago Up 3 hours 11211/tcp dsa_memcached dc7f57778b4e mongo:latest "docker-entrypoint.s..." 2 weeks ago Up 3 hours 27017/tcp dsa_mongodb 863768f4f33f rabbitmq:management "docker-entrypoint.s..." 2 weeks ago Up 3 hours 4369/tcp, 5671-5672/tcp, 15671-15672/tcp, 25672/tcp dsa_rabbitmq Yep. That's the whole set of processes that I was using for my federal friend. Sigh. They've been happily sucking up CPU for more than 2 weeks. grumble The solution: docker stop 863768f4f33f dc7f57778b4e df6fd902c11b 0b0eb7730fb0 605da7fe5159

## Announcing Broadway

DevFeed: [Announcing Broadway](<https://devfeed.tech/articles/announcing-broadway-43981.md>)

Original publisher: [Read original article](<https://dashbit.co/blog/announcing-broadway>)

Author: Marlus Saraiva

Published: 2019-02-25T00:00:00Z

Content type: release

Language: en

Sources: [Dashbit Blog](<https://devfeed.tech/sources/dashbit-blog.md>)

Topics: [data-processing](<https://devfeed.tech/topics/data-processing.md>), [software-development](<https://devfeed.tech/topics/software-development.md>), [Amazon Simple Queue Service (SQS)](<https://devfeed.tech/topics/amazon-simple-queue-service-sqs.md>), [RabbitMQ](<https://devfeed.tech/topics/rabbitmq.md>)

Tags: [amazon-sqs](<https://devfeed.tech/tags/amazon-sqs.md>), [broadway](<https://devfeed.tech/tags/broadway.md>), [concurrent](<https://devfeed.tech/tags/concurrent.md>), [data-pipelines](<https://devfeed.tech/tags/data-pipelines.md>), [data-processing](<https://devfeed.tech/tags/data-processing.md>), [developers](<https://devfeed.tech/tags/developers.md>), [elixir](<https://devfeed.tech/tags/elixir.md>), [pipelines](<https://devfeed.tech/tags/pipelines.md>), [queues](<https://devfeed.tech/tags/queues.md>), [rabbitmq](<https://devfeed.tech/tags/rabbitmq.md>), [release](<https://devfeed.tech/tags/release.md>)

### AI overview

Dashbit announces Broadway v0.1, a tool for building concurrent, multi-stage data ingestion and processing pipelines. It supports sources such as Amazon SQS and RabbitMQ and provides features including back-pressure, acknowledgements, batching, automatic restarts, graceful shutdown, testing, and partitioning.

### Source excerpt

Marlus Saraiva announces the first release of Broadway. A new tool designed to help developers build concurrent, multi-stage data ingestion and data processing pipelines.

## Sending emails to our half million and growing user community

DevFeed: [Sending emails to our half million and growing user community](<https://devfeed.tech/articles/sending-emails-to-our-half-million-and-growing-user-community-20005.md>)

Original publisher: [Read original article](<http://engineering.hackerearth.com/2016/02/11/sending-emails-to-our-half-million-and-growing-user-community/>)

Published: 2016-02-11T00:00:00Z

Content type: article

Language: en

Sources: [HackerEarth](<https://devfeed.tech/sources/hackerearth.md>)

Topics: [API](<https://devfeed.tech/topics/api.md>), [MongoDB](<https://devfeed.tech/topics/mongodb.md>), [MySQL](<https://devfeed.tech/topics/mysql.md>), [Django](<https://devfeed.tech/topics/django.md>), [HTML](<https://devfeed.tech/topics/html.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [architecture](<https://devfeed.tech/tags/architecture.md>), [asynchronous-architecture](<https://devfeed.tech/tags/asynchronous-architecture.md>), [database](<https://devfeed.tech/tags/database.md>), [infrastructure-monitoring](<https://devfeed.tech/tags/infrastructure-monitoring.md>), [mongodb](<https://devfeed.tech/tags/mongodb.md>), [mysql](<https://devfeed.tech/tags/mysql.md>), [queue](<https://devfeed.tech/tags/queue.md>), [rabbitmq](<https://devfeed.tech/tags/rabbitmq.md>), [sendgrid](<https://devfeed.tech/tags/sendgrid.md>)

### AI overview

HackerEarth describes an asynchronous email delivery architecture for sending large volumes of user notifications. Emails are serialized and stored, metadata is placed in RabbitMQ queues, and workers reconstruct and deliver messages through SendGrid, with priority queues used to reduce waiting time.

### Source excerpt

At hackerearth we send emails to keep our users updated on upcoming challenges and their activities, for example, when a user successfully solves a problem, receives test-invitation, updates on user comments. Basically whenever it is appropriate. Architecture It takes lot of computational power to send emails in such large quantities synchronously. So we have implemented an asynchronous architecture to send emails. Here is brief overview of the architecture: Step 1: Construct an email and save the serialized email object in database. Step 2: Queue the metadata for later consumption. Step 3: Consume the metadata, recreate the email object and deliver. The diagram below shows high level architecture of emailing system. The solid line represents the data flow between different components. The dotted line represents the communications. Hackerearth email infrastructure consists of MySQL database, MongoDB database, RabbitMQ queues. Journey Of Email Step 1 - Construct email: There are two different type of emails. Text - Plain text emails Html - Emails with rich interface using html elements. These emails are made using django templates API used by hackerearth developers for sending email - send_email(ctx, template, subject, from_email, html=False, async=True, **kwargs) The above API creates Sendgrid Mail object, serializes and saves it in the db with some additional data. A piece of code similar to the bit shown below is used to create sendgrid Mail object import sendgrid sg = sendgrid.SendGridClient('YOUR_SENDGRID_API_KEY') message = sendgrid.Mail() message.add_to('John Doe <john@email.com>') message.set_subject('Example') message.set_html('Body') message.set_text('Body') message.set_from('Doe John <doe@email.com>') status, msg = sg.send(message) Model below is used for storing the serialized mail object and additional data. class Message(): # The actual data - a pickled sendgrid.Mail object message_data = models.TextField() when_added = models.DateTimeField(default=date

## How we scaled Wisembly's infrastructure : moving from our Elephant to RabbitMQ

DevFeed: [How we scaled Wisembly's infrastructure : moving from our Elephant to RabbitMQ](<https://devfeed.tech/articles/how-we-scaled-wisembly-s-infrastructure-moving-from-our-elephant-to-rabbitmq-34698.md>)

Original publisher: [Read original article](<https://medium.com/unexpected-token/how-we-scaled-wisembly-s-infrastructure-moving-from-our-elephant-to-rabbitmq-282e1fba68ed?source=rss----2d2624499d2---4>)

Author: Guillaume POTIER

Published: 2015-07-02T13:31:56Z

Content type: article

Language: en

Sources: [eFounders](<https://devfeed.tech/sources/efounders.md>)

Topics: [RabbitMQ](<https://devfeed.tech/topics/rabbitmq.md>), [WebSocket](<https://devfeed.tech/topics/websocket.md>), [Socket.IO](<https://devfeed.tech/topics/socket-io.md>)

Tags: [backend](<https://devfeed.tech/tags/backend.md>), [events](<https://devfeed.tech/tags/events.md>), [growth](<https://devfeed.tech/tags/growth.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [moving](<https://devfeed.tech/tags/moving.md>), [performance](<https://devfeed.tech/tags/performance.md>), [rabbitmq](<https://devfeed.tech/tags/rabbitmq.md>), [saas](<https://devfeed.tech/tags/saas.md>), [stack](<https://devfeed.tech/tags/stack.md>), [startup](<https://devfeed.tech/tags/startup.md>), [tech](<https://devfeed.tech/tags/tech.md>)

### AI overview

As meeting traffic grew, Wisembly's PHP API became slow under bursts of live poll submissions: cURL calls through its Elephant transport to the Socket.io push server consumed time and PHP-FPM workers, while API response times rose from about 125 ms to roughly 350 ms or more. The team added RabbitMQ as an alternative event path, connecting the Node.js pusher to a queue and implementing a Rabbit transport behind the same interface as Elephant. In a development-machine comparison, sending 100 events took 8,936 ms through Elephant versus 521 ms through RabbitMQ, about 17 times faster; end-to-end event delivery stayed under 90 ms and was reported unchanged or slightly improved. The article says queue consumption handled current loads, with adding consumers identified as a future option if capacity became limiting. Wisembly later used RabbitMQ for asynchronous work such as emails, exports, statistics, document conversion, and heavy jobs.

### Source excerpt

Hi, I'm Guillaume, I am the CTO and co-founder of Wisembly, a SaaS solution facilitating interactions during your big meetings and events. We recently launched a beta of our new product: Solid to help you make your every-day-meetings more productive and actionable. This is the story of how we improved our performance by changing and adding elements to our stack over the time. I'll particularly focus on how using RabbitMQ on the backend to communicate between different stack and servers improved our life. Where we once were Here are the building blocks for our tech team's philosophy: start small, DRY (Don't Repeat Yourself) and YAGNI (You Ain't Gonna Need It). Back in 2012, when we implemented real-time websockets communications with Node.js and Socket.io, we had a pretty small stack: everything fullstack on Symfony2 with MySQL as single storage and some tiny parts of Backbone.js here and there to power up our application. One year later I presented these slides at the Symfony2 Live Paris 2013 explaining how we implemented Elephant in raw PHP to communicate from our Symfony2 backend with our distant socket.io push server. https://medium.com/media/dfdfc12635e346b3ceb1b2838fda5808/href As I said, our stack was pretty minimal at the time. We didn't feel the need to complexify it for the sake of the socket.io push server. So we looked at websockets and found a pretty way to implement them, connect and emit events with our Open Source library. It did the job, we open-sourced something cool (more than 500 stargazers now and still active!), on our way to live happily ever after :)... Or did we? Where we are now Quite recently, as the business was growing, more and more push events were sent every minute on the various customer meetings we handle daily. For example, we have a specific feature for very interactive seminars where more than 500 users can answer a live poll. Oftentimes, all the attendees submit their answers during the same 10-to-20-second time window, right after

## Introducing Flink Streaming

DevFeed: [Introducing Flink Streaming](<https://devfeed.tech/articles/introducing-flink-streaming-48266.md>)

Original publisher: [Read original article](<https://flink.apache.org/2015/02/09/introducing-flink-streaming/>)

Published: 2015-02-09T12:00:00Z

Content type: tutorial

Language: en

Sources: [Apache Flink](<https://devfeed.tech/sources/apache-flink-stateful-computations-over-data-streams-on-apache-flink.md>)

Topics: [Apache Flink](<https://devfeed.tech/topics/apache-flink.md>), [Streaming](<https://devfeed.tech/topics/streaming.md>), [stream-processing](<https://devfeed.tech/topics/stream-processing.md>), [API](<https://devfeed.tech/topics/api.md>), [real-time](<https://devfeed.tech/topics/real-time.md>), [Statistics](<https://devfeed.tech/topics/statistics.md>), [Scala](<https://devfeed.tech/topics/scala.md>), [Apache Kafka](<https://devfeed.tech/topics/apache-kafka.md>), [RabbitMQ](<https://devfeed.tech/topics/rabbitmq.md>)

Tags: [apache-flink](<https://devfeed.tech/tags/apache-flink.md>), [command](<https://devfeed.tech/tags/command.md>), [continuous](<https://devfeed.tech/tags/continuous.md>), [data](<https://devfeed.tech/tags/data.md>), [flink](<https://devfeed.tech/tags/flink.md>), [ide](<https://devfeed.tech/tags/ide.md>), [kafka](<https://devfeed.tech/tags/kafka.md>), [rabbitmq](<https://devfeed.tech/tags/rabbitmq.md>), [real-time](<https://devfeed.tech/tags/real-time.md>), [scala](<https://devfeed.tech/tags/scala.md>), [socket](<https://devfeed.tech/tags/socket.md>), [statistics](<https://devfeed.tech/tags/statistics.md>), [streaming](<https://devfeed.tech/tags/streaming.md>), [streams](<https://devfeed.tech/tags/streams.md>)

### AI overview

This tutorial introduces Flink Streaming for processing continuous data in real time. It demonstrates flexible windows, rolling aggregations, price alerts, and correlations between stock-market data and Twitter streams, with examples using external sources such as Kafka and RabbitMQ.

### Source excerpt

This post is the first of a series of blog posts on Flink Streaming, the recent addition to Apache Flink that makes it possible to analyze continuous data sources in addition to static files. Flink Streaming uses the pipelined Flink engine to process data streams in real time and offers a new API including definition of flexible windows. In this post, we go through an example that uses the Flink Streaming API to compute statistics on stock market data that arrive continuously and combine the stock market data with Twitter streams.

[Next page](<https://devfeed.tech/tags/rabbitmq.md?cursor=WyIyMDE1LTAyLTA5VDEyOjAwOjAwKzAwOjAwIiwgIjgzMjcyZWQ1LTJjMjktNDA1YS1hNmRhLWQzMmU0NzU5YTI1NiJd>)