【发布时间】:2022-01-13 11:32:52
【问题描述】:
以异步方式调用 laravel 控制器操作的最佳方法是什么,因为它在 .net 中使用 async await 关键字非常容易。
这里是 .net 示例
public async Task<ViewResult> Index() {
return View(await GetThingsAsync());
}
在 laravel 中也可以用同样的方式吗?
PHP laravel 是否提供任何帮助程序或插件来帮助以异步方式调用控制器操作以及以异步方式调用所有 DB 查询 / eloquent 是否提供对异步查询的支持
【问题讨论】:
-
@Phil 不在后台。与 async await 在 .net 中的工作方式相同。就像我用 .net 示例更新了问题
-
你知道你实际上在问什么吗? PHP 在 JVM 中没有 .NET 的异步编程模型或响应式流(类似模型),它大多是单线程的。虽然那些异步/反应模型对性能有好处,但如果您只是等待结果(通过
await),那么尝试做类似的事情在 PHP 中没有任何好处;它根本没有这些功能。 -
我天生就知道它是单线程的。但是有很多包在 PHP 中实现了多线程,比如她的 e 是一个dev.to/webong/using-asynchronous-processes-in-php-7io。我只想以我在 laravel 控制器中编写的异步方式调用所有数据库查询
-
“我只想以异步方式调用所有数据库查询”...为什么?如果您追求并行化(这与 .NET 的 async / await 非常不同),为什么不直接使用您链接的文章中的
spatie/async库?
标签: php laravel asynchronous eloquent async-await