Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Mongodb Messenger Transport Laravel Package

facile-it/mongodb-messenger-transport

A Symfony Messenger transport that uses MongoDB as its message queue backend. It lets applications send, store, and consume messages through MongoDB collections, offering an alternative to AMQP, Redis, or Doctrine transports for projects already running MongoDB.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Queue backend consolidation: Deciding whether to run Symfony Messenger async processing on MongoDB instead of introducing RabbitMQ, Redis, or SQS. This is most relevant if MongoDB is already a core operational dependency.
  • Build vs. buy for a MongoDB-backed queue: Evaluating a small MIT-licensed transport against building and maintaining an in-house MongoDB queue worker. The package reduces initial implementation effort but shifts long-term risk to a low-adoption dependency.
  • MVP and internal-tool scoping: Justifying a low-ceremony async layer for background jobs such as notifications, webhook delivery, report generation, media post-processing, or third-party syncs where infrastructure simplicity matters more than peak throughput.
  • Roadmap sequencing for event-driven features: Enabling delayed, retried, or asynchronous message handling without a separate broker, which can unblock features that would otherwise wait on platform/infra work.
  • Vendor and cost footprint: Reducing managed-broker spend and operational surface area when MongoDB is already monitored, backed up, and staffed.
  • Ecosystem fit check: Clarifying that this is a Symfony Messenger transport, not a Laravel queue driver. For a Laravel product, this supports a “do not adopt by default” decision unless Symfony Messenger is already part of the architecture.
  • Platform baseline check: Release 1.9.0 sets a hard floor at Symfony 5.4+, which becomes a gating question for any service still on older Symfony versions before adoption can be considered.

When to Consider This Package

  • You are running Symfony Messenger (Symfony 5.4 or newer as of the 1.9.0 release line) in a PHP service and already operate MongoDB with confidence.
  • You want to avoid adding a new broker for low-to-moderate throughput async workloads.
  • Your delivery semantics can tolerate at-least-once processing and idempotent consumers.
  • You need a small, permissive, self-hosted transport and can accept pinning a specific version with internal integration tests.
  • You have engineering capacity to monitor queue depth, failed messages, retry behavior, and MongoDB performance.
  • You are comfortable with the dependency chain on facile-it/mongodb-bundle and its compatibility constraints.
  • You can track the project’s minimum-supported-Symfony cadence; 1.9.0 dropped Symfony <5.4, which signals the maintainer will continue raising the floor as upstream deprecations land.

Look elsewhere when:

  • The product is Laravel-native and expects Laravel queues, Horizon, or first-class database/Redis/SQS drivers.
  • You need high throughput, strict ordering, exactly-once behavior, complex routing, or enterprise support/SLAs.
  • The team lacks MongoDB operational expertise or cannot isolate queue traffic from primary database workloads.
  • The organization requires broad community adoption, security review maturity, or vendor-backed maintenance; 7 stars and 0 dependents are meaningful adoption-risk signals.
  • Your services are pinned to Symfony versions below 5.4 and cannot be upgraded on your roadmap.
  • You are unwilling to own fallback planning, version pinning, and possibly forking or replacing the transport later.

How to Pitch It (Stakeholders)

Executive summary: This package lets a Symfony-based PHP service use MongoDB as its async message queue, potentially avoiding a new broker and reducing infrastructure cost and operational complexity. It is best positioned as a time-boxed pilot or MVP accelerator, not a strategic platform bet. The 1.9.0 release is routine maintenance hygiene — dropping pre-5.4 Symfony support and removing a container-extension deprecation — not a capability change, so it does not alter the risk/reward profile.

For engineering: It offers a narrow, MIT-licensed transport on top of an existing MongoDB bundle. The trade-off is low external adoption, a small maintainer surface, and the need for disciplined idempotency, observability, and fallback planning. 1.9.0 confirms active, deprecation-aware maintenance but also demonstrates that the supported Symfony range will move over time; treat the version floor as a dependency you manage, not a fixed constant. Recommend wrapping it behind an internal queue abstraction, pinning versions, verifying your Symfony baseline is 5.4+, and validating retry/failure behavior in staging before production rollout.

For product: The value is faster delivery of background-processing features without waiting for new infrastructure. The risk is reliability and maintenance exposure if adoption does not grow. Approve only where the workload is non-critical or can be migrated to Redis/RabbitMQ/SQS with contained effort, and only for services already on a supported Symfony version.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
3mdikram/worldmoneywords
snowsoft/config
itmosoft/laravel-subscriptions
larva/laravel-ai-qwen
diephp/sequences
users-au/socialite-provider
twidpay/twid-logger
mrnewport/laravel-plaid
mrnewport/laravel-repo
mrnewport/laravel-docsign
mrnewport/laravel-stow
mrnewport/laravel-flow
mrnewport/laravel-priceable
mrnewport/laravel-nestedterms
fredmeng/laravel-apidoc-generator
itstructure/laravel-multilingual-tools
pdustdar/elasticsearch
markupai/php-sdk
rlacerda83/lumem-microservice-shipment
uni-method/symfony-lib