我可以用什么在PHP快速临时存储

我创建一个小插件,处理一些图片。 我们报告进展情况反馈给用户我有一个小的AJAX脚本,将长轮询结果返回。

现在,实习生我需要跟踪的内容被处理的对象。 现在我知道的选项有以下几种。

使用PHP会话对象。 我不能在此特定情况下使用此,因为初始过程也由AJAX完成。 所以主要过程是一个Ajax调用,而长轮询AJAX是另一个Ajax调用。 他们有2个不同的会话ID的,所以他们没有沟通好。

第二个选择是使用数据库作为存储。 我不知道这是不是那么好,因为将有大约40读出的平均工作/写。 我知道,这是没有问题的,但它似乎有点太多的东西那么简单。

我实际寻找的是一种记忆的对象,如果这是可能的。 创建即迅速与最新进展,当我们完成删除记忆的小物件。

我不知道这是可能的,存在于PHP这样的事情,我可以利用这一点。 请注意,这将是一个公共插件,所以我需要与那些适用于所有类型的系统,没有什么特别的方法来工作。

--------------解决方案-------------

我觉得数据库不是更糟糕的解决方案。 如果你觉得写磁盘,也许能差。

内存缓存是好的,但你需要一个“外部插件自由”的小插件,谁轻松取胜,在Linux,Mac上运行,等等...是不是一个好的选择。

如果你使用MySQL,你可以使用存储引擎的表,女巫快,截断或定期清洁,用一个简单的垃圾收集algoritm。 如果内存表不是选项时,InnoDB是不够好。

您可以使用内存缓存这一点。 http://php.net/manual/en/book.memcache.php作为重要的则可以使用图像文件的MD5哈希值加上用户的IP。

看看Redis的,“一个开源的,先进的key-value存储”,我想你会喜欢它。

你需要运行Redis的服务器 ,并与不同的客户端访问。 首选PHP客户端是Predis。 用法很简单:

$client = new Predis\Client($single_server);

$client->set('library', 'predis');
$retval = $client->get('library');

数据库它不是当你期运用堆表是一个坏主意。 有时你根本不服务器在内存缓存都有。
检查在MySQL文档存储表

你想方便, 便于携带 ,共享PHP进程之间的内存,无论PHP是怎么设置? 使用MySQL内存表。 没有安装MySQL的PHP​​是非常罕见的。

分类:php 时间:2015-03-15 人气:0
本文关键词: 存储,PHP
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 0.419 (s). 10 q(s)