如何允许多个连接到Dancer2[英] How to allow multiple connections to Dancer2

本文是小编为大家收集整理的关于如何允许多个连接到Dancer2的处理方法,想解了如何允许多个连接到Dancer2的问题怎么解决?如何允许多个连接到Dancer2问题的解决办法?那么可以参考本文帮助大家快速定位并解决问题。

问题描述

我使用 Perl Dancer2 作为带有基本设置的 RESTful 服务框架(使用命令

<块引用>

dancer2 -a MyWeb::App

生成模板文件并在自动生成的 MyWeb-App/lib/MyWeb/App.pm 文件中添加"get"路由).最近我发现当一个请求需要很长时间才能完成时,服务器被锁定为只服务该请求.例如

get '/' => sub {# simple request to redirect to a static page
    template 'index'; #template directive Templates all go into the views/
};
get '/compute' => sub{
    for (my $i=0;$i<1000000;$i++){
         wait(1000);  #simulate long computation time 
    }
    return "Done!";
};

当第一次在一个选项卡中输入 http://myhost.com/compute 时,在另一个选项卡中,链接 http://myhost.com/ 将不会显示任何内容,直到前一个/compute 路由完成,在我看来,一次只允许一个连接.问题是如何设置 Dancer2 服务器以允许多个连接,即上面提到的两个选项卡可以同时运行?

非常感谢!

推荐答案

你是如何部署你的 Dancer2 应用的?如果您使用的是 plackup,那么您应该意识到 plackup 使用的默认服务器仅支持单个连接.但是您可以使用 -s 选项更改为支持多个连接的 Starman 之类的内容.有关详细信息,请参阅 Dancer2::Manual::Deployment.

如果不是这样,那么您需要告诉我们更多关于您的申请的信息.请求是否有可能因为都需要访问某些共享资源而被阻塞?

本文地址:https://www.itbaoku.cn/post/1793882.html