Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/240.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/66.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 Laravel队列(REDIS)批量大小_Php_Mysql_Redis - Fatal编程技术网

Php Laravel队列(REDIS)批量大小

Php Laravel队列(REDIS)批量大小,php,mysql,redis,Php,Mysql,Redis,有没有办法通过worker更改redis中已处理ID的批量大小 我使用Redis作为mysql的队列,这是因为使用Laravel5.3将大数据导入mysql 另一件事是,我认为,在这里溢出php不是一个好主意,尽管我已经将php.ini内存更改为512MB 据我所知,由于redis的性质,在本例中是FIFO的列表,有没有一种方法可以同时运行多个工人?(这可能是另一个问题,很抱歉) 请随意将我推向另一个方向,因为我愿意接受任何建议。Redis作为一个队列非常轻量级,我认为大多数具有非琐碎队列需求的

有没有办法通过worker更改redis中已处理ID的批量大小

我使用Redis作为mysql的队列,这是因为使用Laravel5.3将大数据导入mysql

另一件事是,我认为,在这里溢出php不是一个好主意,尽管我已经将php.ini内存更改为512MB

据我所知,由于redis的性质,在本例中是FIFO的列表,有没有一种方法可以同时运行多个工人?(这可能是另一个问题,很抱歉)


请随意将我推向另一个方向,因为我愿意接受任何建议。

Redis作为一个队列非常轻量级,我认为大多数具有非琐碎队列需求的Laravel项目都使用Beanstalk,如果您处于早期阶段,这可能值得一看。您将一次从队列中“弹出”一条消息,因此从这个意义上讲,批处理大小是不可配置的,但您肯定可以一次运行多个worker。您可以配置supervisord或任何将工作人员聚集在一起以运行多个进程的工具。这个laracasts线程中也有一些很好的建议,希望能给您提供更多的指导。

Redis作为一个队列非常轻量级,我认为大多数具有非平凡队列需求的Laravel项目都使用Beanstalk,如果您处于早期阶段,这可能值得一看。您将一次从队列中“弹出”一条消息,因此从这个意义上讲,批处理大小是不可配置的,但您肯定可以一次运行多个worker。您可以配置supervisord或任何将工作人员聚集在一起以运行多个进程的工具。这个laracasts线程中也有一些很好的建议,希望能为您提供更多的建议。

感谢您的见解,遗憾的是,目前我不得不坚持使用redis。我将继续尝试supervisord的4个流程。无论如何,我刚刚设置了另一台redis服务器来指向prod server上的数据库,所以现在我有两台服务器运行redis,每台服务器都有单独的数据块。问题是我无法充分挖掘mysql的潜力,按照上面的设置,我使用了mysql大约50%的CPU感谢您的洞察力,遗憾的是,在这一点上,我不得不坚持使用redis。我将继续尝试supervisord的4个流程。无论如何,我刚刚设置了另一台redis服务器,指向prod server上的数据库,所以现在我有两台服务器运行redis,每台服务器都有单独的数据块。问题是我无法充分挖掘mysql的潜力,按照上面的设置,我使用了mysql大约50%的CPU