【问题标题】:What is the maximum size of a stored value for PHP APC?PHP APC 的存储值的最大大小是多少?
【发布时间】:2012-03-25 16:18:55
【问题描述】:

为了加快我的网站速度,我使用 APC 将小表存储为数组,这大大加快了我的查询速度。特别是一个表(我仍然 LEFT JOIN)有近 3000 行,我想知道将它放入数组中并使用 APC 存储是否有效?还是太大了?

我存储的其他表最多有 20 行。

【问题讨论】:

标签: php optimization apc


【解决方案1】:

有许多 ini 设置将决定您可以存储的值的最大大小。

可以在此处找到 APC 特定指令的列表。 http://php.net/manual/en/apc.configuration.php

与您的问题最相关的是:

apx.max_file_size - 防止大于此值的文件被缓存。默认为 1M。

“行”在大小方面描述数据的作用不大。尽管缓存数千个“行”并不是不合理的。通过序列化数组然后使用strlen()/mb_strlen(),您可以更好地了解数组的大小。您可能不希望每个文件超过 1 MB,但您可以根据需要增加 APC 可用的共享内存的总大小/段,具体取决于可用的 RAM。

如果您已经修复了索引问题,您可能会认为这不是您的缓存的理想选择。在查看要缓存的内容时,需要考虑几个因素……数据多久更改一次?从数据库获取成本高昂/缓慢还是频繁请求?

【讨论】:

  • 如果缓存这个查询真的很有用,但它有点太大(而且你不能使用其他缓存系统,比如 Memcached 或只是一个文件),你总是可以 gzip/gunzip用于存储的数据。出于同样的原因,一些 memcache 库会自动压缩大量数据。
猜你喜欢
  • 2019-05-12
  • 2021-03-19
  • 1970-01-01
  • 2011-02-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多