lss/yacache

轻量级缓存(PSR-16 兼容)

1.2.0 2020-12-03 21:41 UTC

This package is auto-updated.

Last update: 2024-09-29 05:22:29 UTC


README

PHP 7.4+ 的最小化 PSR-16 兼容缓存库

本项目的目标是

  • 简约:尽可能少的代码,只提供最基本的功能,尽可能少的依赖。
  • 性能:在主执行流程中移除所有非必要功能,使其运行得非常快。
  • (几乎) 标准兼容性:PSR-16 没有严格的类型(目前还没有!?)。CacheInterface 主要与 PSR-16 兼容(不支持 DateInterval $ttl)
  • 添加了一些微小的、可选的实用函数,以简化 API 开发,例如 increment() 用于速率限制器,remember() 用于移除样板代码行
  • 质量:100% 单元测试覆盖率,phpstan max 严格,strict_types=1

为什么还要有另一个缓存,既然已经有那么多非常好的缓存了?

欢迎提交拉取请求,但请记住上述项目目标。如果您有更复杂的需求,上述其他(编写得更好、支持更好、更成熟)的项目将是更好的选择。

安装

composer require LSS\YACache

如何使用

use LSS\YACache\RedisCache;

$redis = new \Redis('127.0.0.1');
$cache = new RedisCache($redis);
$value = $cache->remember('another key', 100, function () use ($database) { return $database->someExpensiveQueryResult(); });

浏览 /src 目录以获取更多驱动程序