Mea*_*jay 3 queue throttling redis laravel
尝试为队列实现速率限制以每秒运行一项作业,该作业向外部 API 发出 HTTP 请求并加载一种类型的数据。
但不知道如何称呼这份工作,尝试了不同的选择但没有奏效。在示例中:
Redis::throttle('key')->allow(10)->every(60)->then(function () {
// Job logic...
}, function () {
// Could not obtain lock...
return $this->release(10);
});
Run Code Online (Sandbox Code Playgroud)
将在// Job logic...调度队列中放入什么并且此代码将在队列类中?以及如何命名key?我的队列名称是loader.
有什么帮助吗?
把它放在Job 的handle 方法中。
public function handle() {
Redis::throttle('key')->allow(10)->every(60)->then(function () {
// Job logic...
}, function () {
// Could not obtain lock...
return $this->release(10);
});
}
Run Code Online (Sandbox Code Playgroud)
键应该是任何唯一的字符串。它将识别限制:“allow(10)->every(60)”。
| 归档时间: |
|
| 查看次数: |
6145 次 |
| 最近记录: |