问题标签 [zend-cache]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
625 浏览

zend-framework - Zend_Cache_Frontend_Page 的 ini-config

如何在 application.ini 中配置 Zend_Cache_Frontend_Page?我无法定义正则表达式(参见示例http://framework.zend.com/manual/en/zend.cache.frontends.html#zend.cache.frontends.page.examples。应该类似于以下内容

但这是一个糟糕的ini文件语法,它失败了

Zend_Config_Exception: 语法错误,意外的 '$'

0 投票
1 回答
1164 浏览

zend-framework - Zend_Cache 缓存文件消失

我有一个 zend 缓存,它存储数据库中的一个数组。可以很好地读取和更新缓存。但是实际的缓存文件似乎在一天左右后消失了。我认为添加automatic_cleaning_factor = 0会解决这个问题,但似乎并非如此。

使用此缓存的页面不是很受欢迎,不确定这是否与它有关......有什么想法吗?

0 投票
2 回答
6245 浏览

zend-framework - 清除 Zend Cache 的模式

我开始使用 Zend Cache(APC 后端),并且在返回缓存值而不是每次都访问数据库方面一切都很好。但是,这是我的问题:

每个运营商都有自己的返利,每个运营商都有不同的返利,现在如果我更改数据库并需要清除所有运营商的返利,我该怎么做?

我可以使用$Cache->clean(),但这会清除其他缓存(不仅仅是每个运营商的回扣缓存)。如果我遍历所有运算符:

对于缓存来说,这似乎需要做很多工作。有没有办法只清除一部分缓存。

APC 缓存是否有任何数组结构,还是全部基于缓存键/值?

0 投票
4 回答
756 浏览

php - 如何以分布式方式将 Zend_cache 与 memcached 一起使用?

这个问题的标题可能令人困惑,但问题很简单。

我使用 Zend_Cache 和 memcached 作为后端。我有两个模块,分别称为“最新文章”和“热门文章”。这两个模块都在每个页面上,并使用类似的查询,例如:

到目前为止,我的表有 150 万行。我在上一个查询中使用的每个字段都有索引。我将最近的文章缓存 1 小时,将热门文章缓存 4 小时。我有 4 个 Web 服务器(php5/apache2)和 1 个数据库服务器(mysql)。表引擎是 innoDB。

这个问题有时我的缓存在重负载中过期,这使得我的网站不可用,直到这些模块再次被缓存。我可以有一个新的 MYSQL 服务器。

但是有没有办法以更智能的方式处理缓存?例如,服务器 1 将尝试刷新缓存,而服务器 2,3 和 4 仍将使用缓存中的相同值。

我可以编写一些代码来做到这一点,但我想知道是否有办法直接用 Zend_Cache 做到这一点?如果有一种设计模式可以应用于我的问题?

[编辑] 我想要可以扩展到 100 台服务器的东西

0 投票
2 回答
2781 浏览

php - 如何将缓存控制过期标头添加到图像?

我正在尝试加快我网站上的速度。YSlow 提醒我我的图像缺少过期标题。但是我如何在图像上应用这样的标题?

我的应用程序基于 zend 框架。图像也存储在文件夹中,我如何为它们设置过期标头?

0 投票
1 回答
1459 浏览

php - 在 Zend_Cache 中使用 md5() 生成缓存键

我在将缓存对象的标识符保存在Zend_Cache. 必须对Zend_Cache标识符进行真正的清理(无特殊字符、无空格等)。我的一些内部标识符中有空格,所以保存缓存对象对我来说是个问题。

我正在考虑在保存之前使用 md5() 转换 zend_cache 标识符,例如:

(例如,这里$propertyId可能是一个带空格的字符串)

我的问题是我创建的那些 md5 字符串有多独特?我的两个缓存对象有可能具有相同的标识符吗?有什么建议么?

0 投票
4 回答
8916 浏览

php - Zend Config Ini 缓存

我的 Zend 应用程序使用 3 个 ini 配置文件,总共需要解析 200 多行,包含 100 多条指令。这些文件是否解析每个请求?有些人说他们是(比如这里这里)。如果是这样,这不是效率问题吗?

这些链接中的评论意见不一——有人说您应该避免使用 ini 配置文件并在 PHP 中进行配置,有人说您可以使用 Zend_Cache_Frontend_File,还有人说这不是问题。但是,如果您预计会有大量流量,那么为每个请求解析 200 行文本肯定会很快成为一个问题?

如果您确实建议使用缓存技术,您能否准确解释一下您将如何实现它?

0 投票
1 回答
889 浏览

zend-framework - 在 Zend_Registry 与 Zend_Cache 中存储数据

到目前为止,我一直在使用Bootstrap.php将 application.ini 配置加载到 Zend_Registry 以及记录器实例中。我想知道将这些存储在 Zend_Cache 中是否会是一个更好的解决方案,因为它们在应用程序的生命周期内保持不变,并且每当我重新部署应用程序时,无论如何都会在第一次运行时清除缓存。你对此有何判断?

有人还建议创建一个控制器,将记录器和配置存储在受保护的变量中,然后所有应用程序控制器都将从那里继承。我不认为这是一个比当前 Zend_Registry 更好的解决方案,不确定我是否有道理。

0 投票
2 回答
542 浏览

zend-framework - 在哪里放置缓存清除代码

我现在正在整理一个基于 ZF 的 CMS,并且目前正在缓存我的Zend_Navigation对象,以及由renderMenu(). 所以目前,每当菜单更改时,我必须在相关操作中调用以下行:

我有一个 siteController 来处理对菜单结构的更改,还有一个 pageController 来处理单个页面的添加/编辑/删除,因此代码用于这两个控制器的操作中。

我显然想把这段代码放在一个我可以调用的方法中,但是哪里是最合适的地方呢?行动助手?siteController 和 pageController 的父类?我应该结合控制器吗?或者是其他东西?

0 投票
1 回答
628 浏览

zend-framework - 在 Zend_Cache/Zend_Registry 中存储 Zend_Log 的实例,带/不带自定义帮助器

我正在尝试将 Zend_Log 的实例(使用 Zend_Log_Writer_Stream)存储到 Zend_Cache(最好)或 Zend_Registry(回退),但使用自定义助手作为抽象层而不是直接访问。

问题

  • 除了直接使用 Zend_Registry 时,每次 Zend_Log_Writer_Stream 的 _stream 属性都会消失。

我在下面附上了我的代码以及它生成的输出。

我没有关注这些 链接,因为我有另一个写入器 Zend_Log_Writer_Database 写入到一个单独的数据库而不是应用程序,所以我需要初始化它。现在我已经把它注释掉了。

Bootstrap.php - 剪裁

Helper_SCacheOrRegistry.php

输出:

记录器,局部变量

记录器,来自使用自定义助手的注册表

记录器,来自使用自定义助手的 apc 缓存

记录器,来自 Zend_Registry,直接。

记录器,来自 apc 缓存,直接。