php – 缓存1mb以上的memcache替代品
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了php – 缓存1mb以上的memcache替代品,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1406字,纯文字阅读大概需要3分钟。
内容图文
我在php中有一个超过一MB的对象.我正在使用memcache,它允许我存储1mb或数据.有没有人知道超过1mb的数据的任何其他替代品.我已经读过,更改内存缓存来存储更多不是最好的选择.
解决方法:
您可以使用扩展内存缓存的MultipartCache来支持高于1MB限制的数据.请注意,在memcached 1.4.2及更高版本中,您可以使用-I命令行选项配置支持的最大对象大小.
memcached -I 5m //default: 1mb, min: 1k, max: 128m
MultipartCache简单地根据最大1MB的限制将数据分成不同的部分
例:
$largeSet = range(0, 100000);
$key = "largeSet";
$cache = new MultipartCache();
$cache->setLimit(1024);
$cache->set($key, $largeSet);
系统将根据大小/限制分割数据,这对于上面的样本大约是575个不同的位置.
获取此信息非常简单
$dataFromCache = $cache->get($key);
我们如何确定数据是否合适?这是哈希的用途,但让我们做一个随机测试
for($i = 0; $i < 20; $i ++) {
$rand = mt_rand(0, 100000);
printf("%s - %s\n", $dataFromCache[$rand], assert($dataFromCache[$rand] == $rand) ? "true" : "false");
}
产量
39603 - true
16034 - true
23116 - true
94038 - true
64481 - true
84987 - true
53912 - true
32153 - true
43965 - true
71144 - true
97309 - true
53227 - true
28525 - true
9936 - true
16921 - true
27323 - true
35129 - true
46235 - true
5641 - true
43425 - true
现在让我们看看更敏感的信息..就像图像……
$key = "largeImage";
$cache = new MultipartCache();
$cache->addserver("127.0.0.1");
$cache->set($key, file_get_contents("large_image.jpg"));
header("Content-Type: image/jpeg");
echo $cache->get($key);
内容总结
以上是互联网集市为您收集整理的php – 缓存1mb以上的memcache替代品全部内容,希望文章能够帮你解决php – 缓存1mb以上的memcache替代品所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。