【发布时间】:2017-12-05 11:22:18
【问题描述】:
我认为我可以使用nginx 中的位置管理多个应用程序。
但似乎我无法在具有不同端口的同一服务器上运行多个 dancer2 应用程序(如 localhost:3000、localhost:4000)。
无论如何我把它放在这里是希望专家能给我一些启示。
【问题讨论】:
-
您可以在同一个 PSGI 文件中部署多个 PSGI 应用程序,并在同一个端口上的同一个 plackup 上运行它们。 D2 旨在让您甚至可以在一个 PSGI 文件中拥有同一应用程序的多个实例。但这有风险,如果一个崩溃,它会带走其他人。一般的方法是在自己的端口(或套接字)上单独运行每个。为什么会有这样的问题?
-
但我似乎无法在同一服务器上使用不同端口运行多个
dancer2应用程序 我认为这是错误的。我不明白为什么这会是个问题。您能否扩展您的问题以解释尝试此操作时出了什么问题。 -
我刚开始学习 RESTapi 和 Dancer。如果我编写像 app1.pl 和 app2.pl 这样的 2 个 dancer 脚本,则无法在同一服务器上启动这两个应用程序,因为 dancer 设计为与单端口一起使用。所以总是第一个应用程序保留端口,第二个应用程序将无法监听它,因为该端口已在使用中。
-
dancer 设计用于单端口 这不是真的。在不同的端口上运行多个 Dancer2 应用程序很容易。 Dancer2 应用程序对它们运行的端口一无所知 - 这是由您使用的部署机制设置的。这取决于您运行应用程序的方式,但例如使用
plackup,您可以运行plackup -p 3000 app1.psgi和plackup -p 4000 app2.psgi。 -
@Dave 似乎这是一个不阅读文档的简单问题。您应该将其充实到答案中。