8000 [RFC][Messenger] Support Redis Pub/Sub · Issue #46175 · symfony/symfony · GitHub
[go: up one dir, main page]

Skip to content
[RFC][Messenger] Support Redis Pub/Sub #46175
Closed as not planned
Closed as not planned
@rvanlaak

Description

@rvanlaak

Description

Where #30958 relates to introducing more extensive pub/sub capabilities on the AMQP exchanges, the Redis adapter currently does not support pub/sub yet.

When looking into the other issues that mention pub/sub, it seems AMQP or an external Google Pub/Sub adapter seems to be the only way to support this: https://github.com/symfony/symfony/issues?q=is%3Aissue+pub%2Fsub

In other words, when solely using Redis transports (e.g. due to an infra SLA not allowing RabbitMQ), there is no way to let a single consumer (e.g. one on supervisor) notify all other consumers about an event that happened.

What would it take to introduce Redis Pub/Sub on the Redis Messenger integration?

Example

  1. Let a K8S scheduled cronjob dispatch generation of a huge xml file, by putting one message per chunk on the Redis Messenger transport
  2. Let 10 background worker containers do the processing of these chunks (100k messages)
  3. Let the "finalization" event handler wait until all processing is done and double check everything (1 message)
  4. Let that same finalization handler notify a "frontend" transport to which all publicly facing containers have subscribed.
  5. The frontend containers should then all fetch the updated version of the huge xml file from the shared storage (a S3 bucket)

Currently, the Redis transport does not support step 5.

Metadata

Metadata

Assignees

No one assigned

    Labels

    MessengerRFCRFC = Request For Comments (proposals about features that you want to be discussed)

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      0