Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/295.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 为队列存储临时数据_Php_Laravel 4_Message Queue_Beanstalkd - Fatal编程技术网

Php 为队列存储临时数据

Php 为队列存储临时数据,php,laravel-4,message-queue,beanstalkd,Php,Laravel 4,Message Queue,Beanstalkd,我使用beanstalkd和laravel实现队列。我只想通过我的worker处理一个大数组 我认为将大数组作为消息传递给beanstalkd不是一种好的做法 因此,我只需要建议我是否应该将该数组存储在缓存、数据库或任何其他地方,以便我以后可以访问它。使用特定密钥将该数组(序列化)存储在诸如redis之类的缓存中,然后将该密钥在消息中传递给worker,worker随后可以从缓存中检索数据。。。。如果我将缓存存储在文件系统中,解决任何问题的完美有效方法?或者redis是否提供了一些强大的功能?如

我使用beanstalkd和laravel实现队列。我只想通过我的worker处理一个大数组

我认为将大数组作为消息传递给beanstalkd不是一种好的做法


因此,我只需要建议我是否应该将该数组存储在缓存、数据库或任何其他地方,以便我以后可以访问它。

使用特定密钥将该数组(序列化)存储在诸如redis之类的缓存中,然后将该密钥在消息中传递给worker,worker随后可以从缓存中检索数据。。。。如果我将缓存存储在文件系统中,解决任何问题的完美有效方法?或者redis是否提供了一些强大的功能?如果您的工作人员运行在与发布服务器不同的服务器(nfs或类似服务器)上,则文件系统需要是多个服务器之间的共享驱动器,并且您无法安全地使用临时文件,因为当发布服务器脚本终止时,临时文件将被删除;redis提供了持久化和集群化两种选项,但发布者和订阅者/工作者都可以访问的任何持久性存储都是合适的,因此存储is缓存比保存在数据库中要好。谢谢:)