我正在尝试使用速率限制来限制 Laravel 8 项目中的传出邮件。我有两个邮件队列,名为
email
和 email2
。我希望每个队列限制为每分钟 15 封电子邮件。
在我的 AppServiceProvider.php 中,我有
RateLimiter::for('email', function ($job) {
return Limit::perMinute(15)->by($job->queue);
});
这是我的邮件之一
class AuthTokenMail extends Mailable implements ShouldQueue
{
use Queueable, SerializesModels;
public function __construct(int $code)
{
$this->onQueue('email');
}
public function build()
{
return $this->text('emails.authtoken');
}
public function middleware()
{
return [new RateLimited('email')];
}
}
但是当我运行它时,没有节流。我每分钟仍然收到超过 50 封电子邮件。