如何允许多个连接到Dancer2

时间:2017-05-03 13:03:42

标签: perl dancer

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

  

dancer2 -a MyWeb :: App

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

std::unique_ptr<std::array<T,N>>

当首先在一个标签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将不显示任何内容,直到上一个/计算路线完成,在我看来,只允许一个连接一时间问题是如何设置Dancer2服务器以允许多个连接,即上面提到的两个选项卡可以同时运行?

非常感谢!

1 个答案:

答案 0 :(得分:3)

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

如果情况并非如此,那么您需要告诉我们有关您的申请的更多信息。请求是否可能被阻塞,因为它们都需要访问某些共享资源?