gpt4 book ai didi

scala - 需要关于 Web 应用程序的设计/架构的意见

转载 作者:行者123 更新时间:2023-12-02 07:54:22 24 4
gpt4 key购买 nike

我正在开发一个 Web 应用程序,它需要从一些本地和一些非本地资源获取数据,然后显示它。由于从这些资源中获取数据可能需要任意时间,我正在考虑使用参与者概念,以便每个参与者负责从各自的资源中获取数据。请求线程将等待每个参与者完成其任务,然后使用 ajax 仅更新依赖于该数据的网页部分。通过这种方式,用户将在收到数据后立即开始查看数据,而不是等待所有数据完成后再查看数据。

我正计划为此研究 scala/lift 框架。我已经在网上阅读了一些关于 scala/lift 的文章,并想探索这是否是解决这个问题的正确方法,以及 scala/lift 是否是不错的选择平台。我以前在 Java 和 C# 工作过。欢迎任何意见、评论和建议。

谢谢,加里

最佳答案

看看像Java的JMS这样的消息队列技术。消息队列允许您异步且可靠地处理长时间运行的后台任务。这是 Flickr 和 YouTube 等网站用来异步进行媒体转码的技术。您可以使用 Java EE 服务器或 JMS 技术,例如 Apache 的 ActiveMQ ,然后将您的 Scala/Lift 代码置于其上。

Richard Monson-Haefel 的 book on JMS覆盖得很好。

有关网站扩展和构建的更多一般帮助,请查看 Todd Hoff 的优秀博客,highscalability.com/ .有一些关于使用消息队列以这种方式卸载长时间运行的任务的很好的指示。

顺便说一句,Twitter 将 Scala 用于您正在考虑的事情。这是一个 interview与他们的一些开发人员;他们描述了他们使用 Scala 的一种方式:

Robey Pointer: A lot of our architecture is based on letting Rails do what it does best, which is the AJAX, the web front ends, the website—what the user sees. Anything we can offload out of the request/response cycle, we do. So we queue those tasks into a messaging system and have back-end daemons handle them.

关于scala - 需要关于 Web 应用程序的设计/架构的意见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1777977/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com