缓存系统
Viswoole 缓存系统提供统一的数据缓存接口,支持多种存储后端,通过 Cache 门面 提供便捷的静态调用方式。
核心特性
- 多驱动支持:内置 File(文件)、Redis 驱动,支持自定义扩展
- 标签分组:通过缓存标签对数据进行逻辑分组,支持批量清除
- 竞争锁:内置分布式锁机制,适用于高并发场景
- 连接池:Redis 驱动原生支持协程级连接池管理
- 门面模式:无需依赖注入,全局静态调用
文档导航
| 文档 | 说明 |
|---|---|
| 使用方法 | 缓存基本操作与常用 API |
| 缓存驱动 | File / Redis 驱动配置与使用 |
| 缓存标签 | 标签分组与批量清除机制 |
快速开始
php
use Viswoole\Cache\Facade\Cache;
// 写入缓存
Cache::set('user:1', ['name' => '张三', 'age' => 25], 3600);
// 读取缓存
$user = Cache::get('user:1');
// 判断是否存在
if (Cache::has('user:1')) {
// 缓存存在
}
// 删除缓存
Cache::delete('user:1');架构概览
text
┌─────────────────────────────────────────┐
│ Cache Facade(门面) │
├─────────────────────────────────────────┤
│ CacheManager(管理器) │
├──────────┬──────────────┬───────────────┤
│ File │ Redis │ Tag │
│ (文件) │ (Redis) │ (标签) │
└──────────┴──────────────┴───────────────┘配置文件
缓存配置位于 config/cache.php:
php
return [
// 默认驱动
'default' => env('cache.store', 'file'),
// 驱动列表
'stores' => [
'file' => Cache::FILE_DRIVER,
// 'redis' => Cache::REDIS_DRIVER,
]
];