从拉拉维尔作业返回数据
我正在Laravel上为移动应用程序开发API。
方法将向其他API发出请求,合并和过滤数据,更改其结构等。
对应用程序的要求之一是响应不超过30秒,或者根本不响应。所以,我必须尽可能多地重复请求。我试图通过Laravel Queues意识到这一点,目前在我的工作课上有类似的东西:
private $apiActionName;
public function __construct($apiActionName)
{
$this->apiActionName = $apiActionName;
}
public function handle(SomeService $someService)
{
return $someService->{$this->apiActionName}();
}
控制器中的此操作代码:
public function someAction()
{
$data = $this->dispatch(new MyJob($apiActionName));
return response()->json($data);
}
是的,我知道从工作中返回价值是坏主意,但希望这是可能的。但是,$this->dispatch() 仅返回排队的作业 ID,而不返回句柄方法的结果。
TL;DR:如何从排队的作业返回数据,而不将其保存在任何位置,即使它在队列中有多个尝试?也许有人知道其他方式,如果乔布斯不适合这样做。任何建议将不胜感激。
提前致谢!