【发布时间】:2014-07-16 17:34:45
【问题描述】:
所以我使用 Play 作为我的 MVC 框架。我的 Web 应用程序只是调用 Postgres 数据库以将数据提供给视图。我目前在视图中使用 AJAX 来获取数据。我想有时数据库在发送数据时会有点滞后,所以我会使用 AJAX 来允许加载视图中的其他元素。
现在我的问题是,既然我已经在视图中使用了 AJAX,我应该在控制器中使用 Promises 吗?如果我使用 Promises 会有什么不同吗?我没有足够的经验来弄清楚视图和控制器中的异步操作如何影响我的 Web 应用程序。我的直觉是,AJAX 操作对于每天点击 100 到 150 次的 Web 应用程序来说已经足够了。
您对此有何见解?
【问题讨论】:
-
由于您的数据存储是 Postgres,因此您的数据库调用已经是同步的。将它们包装在承诺/期货中不会有太大的不同。此外,除非您确定这是您的瓶颈,否则可能不值得优化。
-
嗯,很好,因为我忘了考虑数据库。但是假设每个 AJAX 调用都建立了自己的数据库连接。这在某种程度上不是“异步”的吗?
-
不,因为您仍在阻塞线程并消耗资源。
-
感谢您的意见@Ryan
标签: ajax model-view-controller asynchronous playframework playframework-2.0