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

Pheanstalk Bundle Laravel Package

leezy/pheanstalk-bundle

LeezyPheanstalkBundle integrates the Pheanstalk beanstalkd client with Symfony, offering configurable connections, DI services, console commands, and profiler support to simplify setting up, managing, and monitoring background job queues in Symfony applications.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Queue backend selection, not library selection. The real decision this package informs is "should beanstalkd be our job transport?" The bundle itself is Symfony-only glue around pda/pheanstalk. In a Laravel codebase the equivalent is already shipped: the native beanstalkd queue driver sits on the same client. So a PM should treat this as an input to the broker decision, and as a reject-on-principle item for Laravel-only stacks.
  • Build vs. buy vs. wrap. Job lifecycle, connection handling, and the wire protocol are solved by pda/pheanstalk. This bundle adds DI configuration and console ergonomics on top. The PM question is whether a third-party convenience layer belongs in the critical path of job processing when the framework already provides one.
  • Roadmap: async offload as a feature enabler. Moving transactional email, image/video transcoding, PDF and report generation, webhook delivery with retries, and rate-limited third-party calls off the request path. These are the highest-leverage latency wins available to most product teams and do not require a heavyweight broker.
  • Job semantics that become product behavior. Priority bands, delay/TTR, and bury/reserve-with-timeout map directly onto user-facing promises: "password reset jumps the queue," "retry the webhook in five minutes," "park failed jobs for manual review." Choosing this stack constrains how those commitments get modeled and how much of that logic leaks into application code.
  • Durability as a product decision, not an ops footnote. Beanstalkd is in-memory by default; a restart drops unprocessed jobs unless binlog persistence is configured and paid for in disk and tuning. That is a question about whether a lost job means a resent email or a lost order — a PM call, not an SRE call.
  • Operational footprint and TCO. A single small binary with a memcached-like protocol versus operating RabbitMQ or Kafka. For a small team, the difference in on-call load is a real line item.
  • Portfolio risk. ~124 stars, zero dependents, a single maintainer, and a composite score near 2.5. This is a "time-box a spike, don't bet a quarter's roadmap" candidate. Low dependents means little community testing and no crowd to inherit the code if the maintainer goes quiet.

When to Consider This Package

Reasonable fit when:

  • The application is genuinely Symfony, and you want beanstalkd wired into the container without hand-writing service definitions.
  • You already operate beanstalkd in production; this is incremental familiarity, not a new platform to learn.
  • Workloads are short-lived, idempotent, latency-sensitive: email, thumbnails, webhook fan-out, scheduled cleanup.
  • You want the minimal ops footprint — one small daemon versus a managed broker or a Kafka cluster.
  • Someone on the team will own the glue if upstream stalls. At roughly a thousand lines of configuration wiring, forking is feasible but is a recurring cost, not a one-time one.

Look elsewhere when:

  • You are Laravel-only. Use QUEUE_CONNECTION=beanstalkd with pda/pheanstalk and skip the abstraction. This bundle buys nothing there, and adopting it means maintaining a duplicate of framework functionality — the worst category of technical debt.
  • Durability or HA is non-negotiable — job loss on restart or host failure is unacceptable. Prefer SQS, Redis-backed queues, or RabbitMQ with persistence guarantees.
  • You need routing, fan-out, consumer groups, or replay. That is Kafka, RabbitMQ, or Redis Streams territory.
  • Maintenance risk is a blocker. Verify the last release date and the supported Symfony/PHP matrix before scoping anything; bundle DI APIs shift across Symfony majors, and PHP-version constraints are the most likely hard blocker.
  • You want managed infrastructure with no server to operate. SQS or hosted Redis wins on total cost of ownership for a team without dedicated ops.

How to Pitch It (Stakeholders)

To executives: This is a small, MIT-licensed integration layer for a lightweight queue backend. The opportunity is cost and latency: moving slow work — emails, PDFs, webhooks — off the request path is the kind of change that shows up directly in page performance and conversion, and beanstalkd is dramatically cheaper to run than a managed broker or Kafka. The honest caveat is maturity and fit: ~124 stars, zero dependent projects, a lone maintainer, and it is a Symfony component, so on our Laravel stack it is redundant with what the framework already provides. Recommendation: do not adopt the package; run a one-to-two-week spike on beanstalkd via the native driver against a single non-critical workload, and treat any deeper commitment as conditional on that result. Upside if it works is a meaningful reduction in infrastructure spend and on-call surface; downside if it doesn't is a sprint.

To engineering: The value is boilerplate removal — container wiring, connection config, console helpers around pda/pheanstalk — but only in Symfony. On Laravel, this package is dead weight: no service provider, no facade, no queue connector, and the framework's own beanstalkd driver already wraps the same client. The trade-off is adding a single-maintainer, zero-dependent link between the app and the broker. Verify PHP and framework version support first, and confirm Composer resolution doesn't force a downgrade elsewhere. Before anything business-critical goes in this queue, we need a written answer on durability: binlog enabled or not, at-most-once accepted or not, and how buried jobs get surfaced to a human. Observability — queue-depth and bury-rate alerts — ships before the pilot, not after.

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.
payerurl/telegrambot-crypto-payment-instant-payout
dskripchenko/laravel-hybrid-search
riorizkyrainey/lara-ced
mehedimi/static-vel
zharp/zharp
nonsapiens/bigquery-model-sync
lgu-bayambang-ict-office/lgu-laravel-development-standards
andydefer/laravel-support
se7enxweb/flysystem
lampwick/laravel
jeslage/statamic-emojis
micahdshackelford/rmap-laravel
draftsmaninc/draftsman
square-bit/laravel-volition
himito/laravel-mailman
htinlynn/genius-helper
maco-studios/hephaestus
elmogy/larafast
xeviant/laravel-paystack
gorilladash/laravel-website-sdk