作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我认为我不了解Laravel的队列系统。
我实现了Redis(基本配置),并且正在做非常基本的测试,但是此错误MaxAttemptsExceededException
引起了我很多混乱。
该“测试”的想法是简单地通过浏览器运行控制器,并在控制器运行时在for
循环内“分派”作业。在这个测试中,我的目标是每25秒发送1封电子邮件,我想每次运行控制器时,这些电子邮件都是“堆叠的”。
最初一切正常,但是突然,php artisan queue:work
报告错误。
重点是:
超时的原因是什么?是Redis的延迟吗?
此参数正确使用queue:work --tries=3
吗?
有什么我应该更改的设置吗?
.ENV
CACHE_DRIVER=redis
QUEUE_CONNECTION=redis
SESSION_DRIVER=redis
SESSION_CONNECTION=default
'redis' => [
'client' => 'predis',
'default' => [
'host' => env('REDIS_HOST', '127.0.0.1'),
'password' => env('REDIS_PASSWORD', null),
'port' => env('REDIS_PORT', 6379),
'database' => env('REDIS_DB', 0),
],
'cache' => [
'host' => env('REDIS_HOST', '127.0.0.1'),
'password' => env('REDIS_PASSWORD', null),
'port' => env('REDIS_PORT', 6379),
'database' => env('REDIS_CACHE_DB', 1),
],
],
'connection' => env('SESSION_CONNECTION', null),
for ($i = 1; $i <= 5; $i++)
{
$when = now()->addSeconds(25 * $i);
$mykey = 'KEY--' . $i . '--' . $when->toDateTimeString();
dispatch(new TestRedisJob($mykey));
}
public function handle(Redis $redis)
{
Redis::throttle('email')->allow(1)->every(25)->then(function ()
{
\Mail::to('customer@domain.com')
->send(new OrderShipped('contato@fiscalizo.com.br', $this->mykey));
}, function() {
return $this->release(25);
});
public function build()
{
return $this
->from($this->emailFrom)
->subject("Registro Efetivado: " . $this->emailSubject)
->view('emails.welcome');
最佳答案
删除Redis $redis
注入
public function handle()
{
Redis::throttle('email')->allow(1)->every(25)->then(function ()
{
\Mail::to('customer@domain.com')
->send(new OrderShipped('contato@fiscalizo.com.br', $this->mykey));
}, function() {
return $this->release(25);
});
关于laravel - 为什么MaxAttemptsExceededException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58769679/
我在 failed_jobs 上有多个失败的作业。我尝试重新排队 MaxAttemptsExceededException 但总是失败。如何重试那里的工作类型? 注意:每次我通过 php artisa
我是一名优秀的程序员,十分优秀!