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

Laravel Google Cloud Tasks Queue Laravel Package

stackkit/laravel-google-cloud-tasks-queue

Use Google Cloud Tasks as a Laravel queue driver. This package dispatches Laravel queued jobs to Cloud Tasks with support for queues, delays, retries, and secure HTTP handlers, making it ideal for serverless and App Engine workloads without managing workers.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit. The package is a thin adapter between Laravel's Queue contract and Google Cloud Tasks HTTP-target dispatch: jobs are serialized into task payloads, and Cloud Tasks calls back into the application over HTTPS to execute them. This fits a Laravel monolith or small service fleet already committed to GCP that wants managed queue infrastructure without operating Redis, RabbitMQ, or a database queue. It does not fit workloads with large payloads, very long runtimes, or non-GCP/multi-cloud targets — those are pre-existing constraints of Cloud Tasks (per-task payload ceiling, bounded dispatch deadline, rate/concurrency caps), not of this release, but they should be confirmed against our job profile before adoption.

Integration feasibility. Straightforward: composer require, publish the config, add a connection to config/queue.php, supply project/location/queue/service-account settings via env, and expose a publicly routable HTTPS endpoint with OIDC verification. The friction is IAM, service-account scoping, and ingress/networking — not the package API. Rough order of magnitude: one engineer-day for a first working queue, plus security review of the OIDC callback path.

Technical risk (v6.0.0). The release is a single line: Laravel 13 support. A major version bump for a framework-support-only change strongly implies the maintainer is dropping older Laravel lines, and probably raising the minimum PHP version. The functional surface appears unchanged, so runtime risk is low where we are compatible. The real risk is version-lock coupling: we likely cannot adopt Laravel 13 without v6, and cannot adopt v6 without Laravel 13. That turns a routine OSS dependency into a step-change that must be scheduled with the framework upgrade, not independently. Secondary risk: a Laravel major can shift job serialization or queue contracts even when the driver code is untouched, and that is exactly what a one-line changelog will not tell us.

Key questions.

  • Does v6.0.0 drop Laravel 12 and/or 11, and what is the new minimum PHP?
  • Are there any changes to job serialization, the Queue contract implementation, or the OIDC/auth path that the changelog omits?
  • Is v5.x still receiving patches and security fixes, and for how long?
  • Is there a CI matrix exercising Laravel 13 against real Cloud Tasks (or an emulator), rather than just a dependency constraint bump?
  • Who maintains the package, and what is the bus factor / fallback plan if it goes dormant?

Integration Approach

Stack fit. Laravel 11–13 on Cloud Run, GKE, GCE, or App Engine, with Cloud Tasks as the queue backend. Good fit for GCP-committed teams; poor fit for anything that needs portability across clouds or on-prem.

Migration path. Pin to v5.x while on Laravel ≤12. Adopt v6.0.0 only as a passenger on the Laravel 13 upgrade — ideally in the same PR, so the two version constraints move together. Because the diff is framework support only, expect zero application-code changes: config keys, job classes, and dispatch calls should be untouched. If that expectation is wrong, it will surface immediately in tests.

Compatibility. Verify three things before merging: the illuminate/* constraint set, the PHP version floor, and the google/cloud-tasks SDK version. Then specifically re-test the queue surfaces most likely to drift with a framework major even when the driver is unchanged — chained jobs, dispatchAfterResponse, per-job connection overrides, rate limiting, and job middleware.

Sequencing.

  1. Confirm the Laravel 13 upgrade is actually in scope and scheduled.
  2. Branch: bump framework and package together; resolve constraints.
  3. Run the queue feature suite against a non-production Cloud Tasks queue.
  4. Canary a single low-criticality queue through staging with a real OIDC round trip.
  5. Roll production queue-by-queue, not all at once.

Operational Impact

Maintenance. Very little code to own, but the release cadence is now welded to Laravel's annual majors. This is effectively one forced dependency upgrade per year, and it will always land at the same time as the framework upgrade — meaning the two highest-risk changes in the stack are permanently scheduled together. Budget for that concentration rather than treating it as routine.

Support. Single-maintainer open-source package. That is a real bus-factor exposure for a component sitting directly on the job-execution path. Mitigations: keep the surface area small (one connection, standard job classes), be prepared to vendor a fork, and monitor the repo's responsiveness rather than assuming an SLA.

Scaling. Cloud Tasks absorbs dispatch scale, so the bottleneck moves to the HTTP endpoint: request concurrency, cold starts (especially Cloud Run), and queue-level rate and concurrency limits. Keep job payloads small — pass model identifiers rather than serialized models — and tune queue limits rather than scaling the workers.

Failure modes. The characteristic ones for this pattern, none of which this release changes:

  • OIDC misconfiguration → Cloud Tasks receives 401 from our own application; jobs silently retry and then dead-letter.
  • Handler returns 2xx on an internal error → task is dropped with no trace.
  • Target URL unreachable after a deploy or a route rename → queue backs up.
  • At-least-once delivery → duplicate execution, so jobs must be idempotent.
  • Paused queue or exhausted rate limits → throughput collapses quietly.

Ramp-up. A few hours for anyone fluent in Laravel queues; the unfamiliar surface is GCP-specific — service accounts, OIDC audience configuration, and the Cloud Tasks console. Ship a short runbook alongside adoption: how to inspect a single task, purge a queue, and replay a dead task. Without it, the first production incident will be a slow one.

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.
shitoudev/permissionmanager
johannesclimacus/laravel-tui
hocvt/seotools
vitalybaev/sypexgeo
amphibee/themosis-ignition
gito-me/fast-excel
frankyso/laravel-ipaymu
geolize-studio/laravel-chile
boomerangui/chat
jinas/dhivatar
store-doc/laravel-storage-driver
plus-it/laravel-translation-manager
diephp/perhaps
diephp/telegraph
osmaviation/spreadsheet
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console