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

Apc Bundle Laravel Package

orkestra/apc-bundle

A small bundle that adds APC/APCu cache support to Orkestra applications, wiring cache services and configuration so PHP's shared memory cache can be used through the framework's standard cache abstractions. Useful for fast local caching without external services.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

The framework mismatch is the product decision. orkestra/apc-bundle is a Symfony 2 bundle, not a Laravel package — no service provider, no extra.laravel auto-discovery, no Laravel cache-contract adapter. For a Laravel portfolio, the only legitimate "leveraging" is as a signal and a pattern source, never as a dependency.

  • Legacy-footprint audit / decommissioning signal. Its presence in a dependency tree is a reliable marker of a Symfony 2 + PHP 5.x + APC estate. That belongs on the modernization roadmap as a funded migration item, not a backlog ticket.
  • Build vs. buy resolves firmly to "build" (and the build is tiny). At 4 stars, 0 dependents, and a composite score of 0.08, there is no community, no security-response process, and no maintenance cadence. The useful surface — deploy-time cache invalidation, apcu_* stats, a cache-clear endpoint — is a few dozen lines in Laravel via the Cache facade, and the underlying capability already ships as config/cache.php drivers. Adopting an unmaintained bundle to get functionality your framework already has is a negative-value decision.
  • Cache-layer standardization roadmap. Informs a decision the other way: mandate a PSR-6/PSR-16 abstraction (symfony/cache, Laravel's cache contracts) with Redis/Memcached backends so no application ever needs a framework-and-extension-specific bundle again.
  • Deploy-time cache invalidation as a product feature. The one genuinely reusable concept here is treating cache warming/clearing as a first-class deployment step. A PM can take that concept into a Laravel release process (cache warming on deploy, tagged invalidation, queue-safe cache separation) without importing any of the code.
  • Platform guardrails. A concrete example for an approved-dependency policy: framework-version-pinned, single-maintainer, no-CVE-tracking packages get blocked at the package-manager level.
  • Use cases it nominally covers (for anyone scoping a replacement): APC user-cache-backed application caching, APC-accelerated class-loader maps, and opcache/APC configuration plumbing — all now covered by OPcache plus symfony/cache or Laravel's native cache drivers.

When to Consider This Package

Consider it only under all of the following simultaneously:

  • You are maintaining an existing Symfony 2.x application that cannot be upgraded on the current roadmap.
  • The host runs PHP 5.x–7.0 with the legacy apc extension installed and enabled.
  • You need cache wiring today and the team has no capacity to write a small service definition.
  • The package is vendored/locked and reviewed, and the alternative is worse (e.g., no cache at all on a demonstrably slow path).

Look elsewhere in every other case:

  • Any Laravel project. Laravel has never used this; its cache layer is framework-native with Redis, Memcached, database, file, and array drivers configured in config/cache.php. This is the wrong ecosystem.
  • Symfony 3.0+, where FrameworkBundle cache configuration and symfony/cache superseded it, and Symfony 4+ where bundle-less Flex architecture makes it structurally inapplicable.
  • PHP 7.1+ / 8.x, where APC does not build or run and OPcache plus a PSR-6 implementation is the supported path.
  • Anything with a security or compliance requirement. No maintainer activity, no dependents, no CVE history to rely on — you cannot make a supportability claim to a reviewer or auditor.
  • Anything greenfield. Zero reason to introduce a dead framework branch's abstraction.

The honest default: this package is a historical artifact. Treat it as an inventory finding, not an option.

How to Pitch It (Stakeholders)

To executives (30 seconds): We evaluated orkestra/apc-bundle and recommend against adoption. It is a small add-on for Symfony 2, a PHP framework version out of support since 2018, depending on APC, a caching extension replaced in PHP 5.5. It has 4 GitHub stars, no downstream users, and no maintenance activity. It does not reduce cost or risk — it concentrates both. Budget impact of adopting: roughly zero savings plus an ongoing supportability liability. Recommendation: no action to adopt; if it appears anywhere in our portfolio, it is evidence of an application that belongs on the modernization roadmap.

To engineering leadership: Do not add this dependency. Where a team needs what it does, the supported substitutes are OPcache (opcodes) plus symfony/cache for Symfony, or Laravel's native cache contracts, on a PSR-6/PSR-16 interface with Redis or Memcached behind it. That keeps the caching decision independent of framework version and gives us a security patch path. If a team wants the pattern — deploy-time invalidation, cache stats, a clear-cache endpoint — we can implement it natively in a Laravel service in a few dozen lines, or reach for symfony/cache if a Symfony-style abstraction is genuinely required.

To the requesting team (if someone asked for it, including a Laravel team): Tell us the underlying problem — slow bootstrap, class-loading overhead, missing cache config, or a need to invalidate cache at deploy time. On a current PHP version that is a configuration change plus a small amount of framework code, not a package. If you are genuinely stuck on Symfony 2 and APC, escalate it as a migration risk rather than a dependency request, because that is what it actually is.

One-line summary for the decision log: Rejected — wrong ecosystem for our Laravel work, end-of-life framework, superseded extension, no maintenance or user base; adopt OPcache + framework-native PSR-6 caching instead, and reuse only the deploy-time invalidation pattern.

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.
gmostafa/php-graphql-client
xeviant/paystack
snowsoft/faker
meditationsteps/blogetc
animalyoung/laravel-influxdb
onix-solutions/sms-telera
lonely-lights/prosetta
oxygen/data
oxygen/core
jengo/base
xiloryx/log-collector
a21ns1g4ts/filament-stripe
la-php/laravel-admin
artisan-build/community-prompts
vleroy/smart
ayles-software/laravel-australian-public-holidays
cboxdk/laravel-id-spatie
cboxdk/laravel-id-billing
cboxdk/laravel-id-billing-bridge
simple-as-fuck/php-performance-log