rah / rah_memcached
Memcached 文本模式 CMS 模板
0.3.0
2022-04-22 18:19 UTC
Requires
- php: >=8.1
- ext-memcached: *
- textpattern/installer: *
- textpattern/lock: >=4.7.0
Requires (Dev)
- rah/mtxpc: ^0.9.0
- squizlabs/php_codesniffer: 3.*
This package is auto-updated.
Last update: 2024-09-22 23:27:18 UTC
README
这是一个用于 Textpattern CMS 的插件,它将模板的部分内容存储在 Memcached 中,这是一个分布式内存键值缓存系统。
安装
使用 Composer
$ composer require rah/rah_memcached
或 下载 安装包。
基本
插件 rah_memcached 为 Textpattern 引入了一个新的容器标签。该标签将包装的内容以及其中设置的 变量 存储在 Memcached 的内存存储中。
<rah::memcached>
<txp:variable name="variable1" value="value" />
<txp:article_custom limit="200">
<txp:title />
</txp:article_custom>
</rah::memcached>
在后续调用中,结果输出标记和变量将从内存中加载,跳过模板解析和代码执行,加快您的网站速度并减轻数据库负载。
要求
- Textpattern >= 4.7.0。
- PHP >= 8.1.0.
- Memcached PHP 扩展。
- libmemcached 客户端库。
- Memcached 服务器。
配置
连接的服务器可以通过 Textpattern 的 textpattern/config.php
文件进行配置
define('RAH_MEMCACHED_HOST', 'localhost');
define('RAH_MEMCACHED_PORT', 11211);
属性
<rah::memcached>
...contained statement...
</rah::memcached>
该标签是一个容器,其属性如下。
name
设置一个名称,一个缓存项的键。给定的名称用于标识项,并将其保存和从存储中检索。如果没有定义 name,则自动通过散列给定的包含标记创建。虽然名称是可选的,但给出它更高效,并避免任何潜在的散列冲突。
默认值:未定义 示例:name="mykey"
expires
存储项过期并刷新所需的时间(秒)。如果为零(0
),则缓存保留在内存中,直到缓存刷新或 Memcached 重新启动。
默认值:0
示例:expires="3600"
persist
如果启用,则忽略由网站的 lastmod
时间戳设置的 内容更新。默认情况下,当 Textptatern 的 lastmod 时间戳更新时,缓存将失效,这是在更新任何内容时完成的。
默认值:禁用 示例:persist
示例
将部分导航存储在内存中
<rah::memcached name="navigation">
<txp:section_list wraptag="ul" break="li">
<txp:section />
</txp:section_list>
</rah::memcached>
将变量存储在内存中
<rah::memcached> <txp:variable name="color" value="red" /> <txp:variable name="size" value="small" /> </rah::memcached>
Color: <txp:variable name="color" /> Size: <txp:variable name="size" />
变更日志
版本 0.3.0 – 2022/04/22
- 修复 PHP >= 8.1 兼容性。
- 现在需要 PHP >= 8.1。
版本 0.2.0 – 2022/04/17
- 为 Textpattern >= 4.7.0 兼容性注册标签。
- 用
persist
替换了lastmod
属性。 - 现在需要 PHP >= 7.2.0。
- 现在需要 Textpattern >= 4.7.0。
版本 0.1.0 – 2014/03/19
- 首次发布。