【问题标题】:Task Pattern for Java Web ApplicationsJava Web 应用程序的任务模式
【发布时间】:2011-09-23 13:13:13
【问题描述】:

在企业 Swing 应用程序上实现某种风格的任务模式是很常见的。这是有道理的:您将有很多复杂的用户命令,可能需要(不同的)很长一段时间才能完成,而且您不能期望您的用户只是坐在那里等待。

但它在动态 Web 应用程序中的实用性如何?假设我有一些基于 AJAX 的 Web 应用程序,因此用户可以在整个页面上发出各种命令,并且这些命令中的每一个都作为独立请求发送回服务器。

任务模式是否适合此类应用程序的“请求处理机制”,或者当今的 Web 容器是否如此先进和多线程以至于这样做会过大?

提前感谢您的任何意见!

【问题讨论】:

  • 你能再具体一点吗?不是将 HTTP 请求归类为任务或命令上下文相关吗?此外,RESTful 架构通过“资源”和“动词”在一定程度上解决了这个问题,以防你正在寻找。
  • COMET/Long-Poll AJAX 都是当前可用于处理带有通知/回调的扩展请求处理的方法。虽然它们本身不是一种模式,但您可以考虑为您的场景启用技术。
  • 这些都是很好的建议,但我只是想问Task Pattern 是否是在后端使用业务逻辑处理 bean 实现的好解决方案。
  • 谢谢@Sanjay,我认为这几乎解决了我最初问题背后的核心概念。再次感谢您再次入住并回答我的后续问题!我会再等几天,如果您只想将您的最后回复复制到实际答案(而不是评论)中,我很乐意将您作为已接受的答案进行检查。
  • 当然欢迎你,祝你的项目好运! :)

标签: java design-patterns web-applications multitasking


【解决方案1】:

我使用@Sanjay T. Sharma 的回复作为答案。我这样做是因为我喜欢 100% 的接受率,很明显他/她出于某种原因不想回答这个问题。

(桑杰的)回答

"...不需要即时反馈给用户的事情最好在独立的服务器/服务上处理,而“网络容器”可以专注于为网络客户端提供服务。继续你的例子,当答案被接受时,“接受率”的更新在完成后并不完全“发送回”给客户端,而是异步反映在底层数据存储中,这会在下一次为用户创建响应时显示给用户。 "

【讨论】:

  • 虽然我不介意没有收到此线程的声誉,但我不想回答这个问题是不真实的。我没有复制我的评论内容作为答案,因为我不想给其他发帖人留下问题已得到回答的印象。另外,我假设一个评论更新说你已经完成了等待,并希望我关闭这个线程。想一想,如果我不想回答/帮助,我为什么要跟进评论部分的查询?:)
猜你喜欢
  • 1970-01-01
  • 2010-12-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-15
  • 1970-01-01
  • 2012-10-03
相关资源
最近更新 更多