首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Dancer:同时处理多个请求

Dancer:同时处理多个请求
EN

Stack Overflow用户
提问于 2013-05-16 18:04:14
回答 2查看 1K关注 0票数 1

这是我的情况:我正在使用Dancer框架开发一个web应用程序,我想从浏览器端向服务器端的数据库插入一些数据。问题是,当数据太大时,上传花费的时间太长,以至于我正在考虑显示一个进度条来描述进度。

我通过发送两个请求来实现这一点:一个请求用于发布数据,另一个请求用于轮询状态。但似乎一旦处理了第一个请求,另一个请求就不会工作,直到第一个请求完成。因此,状态不返回任何内容,并且突然返回100%。为此,我在处理第一个请求时创建了一个线程,这样主线程就可以返回处理第二个轮询请求。这工作得很好,直到我必须杀死在子线程(这是another question)中产生的一些子进程。

所以我的问题是,除了多线程之外,还有没有其他方法可以同时处理多个请求呢?通常情况下,web程序员如何处理这种情况?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-05-16 21:28:29

同时处理多个请求应该没有问题。你如何运行你的应用程序?如果使用内置服务器(perl、your_app.pl),那么默认情况下它是单线程的,一次只能处理一个请求。

您可能希望使用多进程/多线程部署选项,例如Starman。它在https://metacpan.org/module/YANICK/Dancer-1.3113/lib/Dancer/Deployment.pod#Running-on-Perl-webservers-with-plackup中进行了描述

票数 3
EN

Stack Overflow用户

发布于 2013-05-16 21:29:01

我会先把Dancer粘合到AnyEvent上,然后用Twiggy来托管这个应用。在谷歌上搜索一下,这看起来是一个很好的起点。

  • http://blogs.perl.org/users/mstplbg/2010/12/using-anyevent-and-dancer.html
  • http://blogs.perl.org/users/mstplbg/2010/12/anyevent-and-dancer-condvars.html
  • http://blogs.perl.org/users/mstplbg/2011/03/long-running-requests-with-progress-bar-in-dancer-anyevent.html
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16584501

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档