Weave Code
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

Cache Laravel Package

symfony/cache

Symfony Cache provides fast, low-overhead PSR-6 caching with adapters for common backends. Includes PSR-16 bridge plus implementations of symfony/cache-contracts CacheInterface and TagAwareCacheInterface for flexible app caching.

View on GitHub
Deep Wiki
Context7

Provides extended PSR-6, PSR-16 (and tags) implementations

Frequently asked questions about Cache
Can I replace Laravel’s default Redis cache driver with Symfony Cache’s RedisAdapter without breaking my app?
Yes, Symfony Cache’s RedisAdapter is a drop-in replacement for Laravel’s RedisCache. The Cache facade will work identically, and you’ll gain performance optimizations. Just update your `config/cache.php` to point to the new adapter class. Ensure your Redis PHP extension (>=6.1) is up-to-date to avoid conflicts.
How does Symfony Cache’s TagAwareAdapter compare to Laravel’s built-in cache tagging?
Symfony Cache’s TagAwareAdapter fully supports Laravel’s `Cache::tags()` syntax and invalidation logic. It’s feature-complete for tag-based invalidation (e.g., `Cache::tags(['users'])->put()`), making it a seamless upgrade. The underlying implementation is more performant and standards-compliant than Laravel’s default adapters.
What Laravel versions are compatible with Symfony Cache?
Symfony Cache works with Laravel 8.x, 9.x, and 10.x since Laravel’s Cache facade uses PSR-6 under the hood. For Laravel 7.x, you may need to manually bridge the PSR-6 pool to the facade. Always check Symfony’s [version requirements](https://symfony.com/doc/current/components/cache.html) for PHP/extension compatibility.
Is there a performance benefit to using Symfony Cache over Laravel’s default FileCache or RedisCache?
Yes, Symfony Cache is optimized for low overhead and high throughput. Benchmarks show it outperforms Laravel’s default adapters in both read/write latency and memory usage, especially in high-traffic APIs or e-commerce apps. The ChainAdapter also enables multi-layered caching (e.g., Redis + filesystem) for resilience.
How do I configure Symfony Cache for a Laravel app using Redis with SSL and Sentinel failover?
Configure the RedisAdapter in `config/cache.php` with the `dsn` option, including SSL and Sentinel settings. Example: `'dsn' => 'redis://:password@127.0.0.1:6379/0?ssl=true&sentinel=[sentinel1]:26379,[sentinel2]:26379'`. Symfony Cache supports all Redis extension features, including Relay and clusters.
Will Symfony Cache’s LockRegistry work with Laravel’s queue workers or scheduled commands?
Yes, LockRegistry provides distributed locking for Laravel’s queue workers (e.g., `Lock::acquire('process-order-{id}')`) or command scheduling. It’s Redis-backed, so ensure your Redis server is configured for high concurrency. Test thoroughly in production-like environments to validate timeout/slot eviction behavior.
Are there any known issues with Symfony Cache when using Laravel’s Telescope or Debugbar?
Symfony Cache doesn’t natively integrate with Laravel Telescope or Debugbar, but you can manually log cache hits/misses via events or middleware. For advanced monitoring, use Symfony’s CacheDataCollector with a custom Laravel service provider to expose metrics like hit ratios or evictions.
How do I migrate from Laravel’s default cache drivers to Symfony Cache incrementally?
Start by replacing one adapter (e.g., Redis) in `config/cache.php` and test thoroughly. Use the ChainAdapter to combine Symfony Cache with existing drivers (e.g., Redis fallback to filesystem). Monitor performance and gradually phase out older adapters. Laravel’s Cache facade will handle the transition seamlessly.
What happens if Redis fails in a ChainAdapter setup with Symfony Cache?
ChainAdapter will automatically fall back to the next configured adapter (e.g., filesystem) if Redis fails. Exceptions are propagated up the chain, so ensure your error handling (e.g., `try-catch` blocks) accounts for adapter-specific exceptions like `RedisException`. Graceful degradation is built into the design.
Are there alternatives to Symfony Cache for PSR-6 caching in Laravel?
Yes, alternatives include `illuminate/cache` (Laravel’s default), `predis/predis` (Redis-specific), or `spatie/laravel-cache` (extended Laravel drivers). However, Symfony Cache stands out for its PSR-6/PSR-16 compliance, tag-aware support, and adapter diversity. It’s the most future-proof choice for Laravel apps requiring high performance and standards compliance.
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.
hexters/coinpayment
rjcodes/rjcms
act-training/laravel-permissions-manager
alimarchal/laravel-chart-of-accounts
babenkoivan/elastic-scout-driver
mkwebdesign/filament-watchdog-v5
renatomarinho/laravel-page-speed
zedmagdy/filament-business-hours
renatovdemoura/blade-elements-ui
devgeek/beacon-admin
benjamin-rqt/data-watcher-bundle
atriumphp/atrium
sandermuller/package-boost-laravel
sandermuller/boost-skills
redaxo/core
yusufgenc/filament-api-forge
l3aro/rating-star-for-filament
leek/filament-subtenant-scope
anil/file-picker
broqit/fields-ai