awonderphp/simplecacheredis

Redis 的 PSR-16 SimpleCache 接口实现,可选 AEAD 加密

1.2.2 2018-04-30 23:02 UTC

This package is not auto-updated.

Last update: 2024-09-18 20:28:23 UTC


README

这是 Redis 缓存引擎的 PSR-16 实现。

提供了两个不同的类。第一个类仅提供符合 PSR-16 的 Redis 接口,第二个类通过 libsodium 扩展提供了缓存数据的加密。

有关 SimpleCacheRedis 的详细信息,请参阅文件 INSTALL.mdUSAGE.mdSURVIVAL.md

有关加密选项的说明,请参阅文件 SODIUM.md

关于此软件使用的 MIT 许可证的条款,请参阅文件 LICENSE.md

关于 Redis 缓存

根据网站 https://redis.ac.cn 的信息,Redis 不仅是一个缓存引擎,它还提供了一个可以用于数据库、缓存和消息代理的内存数据结构。

对于这个 PSR-16 实现,使用它作为 PHP 对象缓存是所有重要的,但 Redis 本身能够在本类的范围之外做很多事情。

在查看各种基准测试时,我发现与 PSR-16 实现最佳匹配的使用场景中,APCu 比 Redis 快。然而,有几个令人信服的理由说明为什么 Redis 在某些情况下可能是更好的选择。

  • Redis 缓存可以在 web 服务器守护进程重启后继续工作。
  • Redis 缓存(除非配置为不这样做)可以在服务器重启后继续工作。
  • Redis 缓存可以使其网络中的其他服务器访问。
  • 如果需要缓存处理大量数据的缓存引擎,Redis 可以使用集群。

如果您只有一个服务器场景,不需要与其他服务器共享其缓存,那么对于 PSR-16 缓存需求,APCu 可能是更好的选择,请参阅SimpleCacheAPCu 中的 PSR-16 实现。
SimpleCacheAPCu 为 APCu 提供了 PSR-16 实现。

关于 PHP-FIG 和 PSR-16

PHP-FIG 是 PHP 框架互操作组。它们主要存在是为了创建标准,使得世界各地的不同开发者能够创建不同项目,这些项目可以很好地协同工作。PHP-FIG 是 PSR-0 和 PSR-4 自动加载标准的推动者,这使得将其他人的 PHP 类库集成到您的 Web 应用程序中变得容易得多。

PHP-FIG 此前发布了 PSR-6 作为缓存接口标准,但 PSR-6 的接口要求超出了许多 Web 应用程序开发者的需求。对于许多不需要 PSR-6 所需功能的我们来说,KISS - “保持简单,愚蠢”适用。

为了满足我们这些不需要PSR-6实现的人的需求,开发了PSR-16,现在它已经成为一个公认的标准。

当我阅读PSR-16时,定义的接口与我个人使用多年的APCu缓存类没有太大的区别。因此,我决定使我的类满足接口要求。

然后一个Redis用户问我能否为Redis适配这个库。我做到了,这就是结果。

编码标准

使用的编码标准主要是PSR-2,除了允许使用?>作为结束标记,并添加了一些PHPDoc要求,大部分但并非全部来自PEAR标准

如果有朝一日它成为公认的标准,打算将PHPDoc标准切换到PSR-5

正在使用的phpcs嗅探规则:psr2.phpcs.xml

关于 AWonderPHP

我可能在2018年底之前无家可归。我不知道如何生存,我尝试过,但似乎总是失败。这根本不是一个像我这样的人应该参与的社会。

如果我无家可归,我担心我的心理健康会加速恶化,我不想看到自己发生这样的事情。

AWonderPHP是我尝试清理和打包我个人使用的大量PHP类,以便留下一些我自己的东西。

如果您想提供帮助,请参阅SURVIVAL.md文件。

感谢您花时间。

EOF