AWS Elastic Beanstalk上的Tomcat:公开多个端口

AWS Elastic Beanstalk上的Tomcat:公开多个端口,tomcat,amazon-web-services,playframework-2.0,war,amazon-elastic-beanstalk,Tomcat,Amazon Web Services,Playframework 2.0,War,Amazon Elastic Beanstalk,我有一个Play 2.3.6应用程序,我使用WAR文件部署到运行在Elastic Beanstalk上的Tomcat。该应用程序为普通HTTP公开端口80。该应用程序还公开了另一个端口(2551),用于构建Akka集群。然而,当部署到AWS时,即使是在本地主机上,应用程序也被拒绝连接到端口2551。是否可以通过弹性Beanstalk上的Tomcat公开多个端口 它不应该通过servlet提供服务,而应该是一个普通的套接字。akka端口不应该仅仅在EC2实例之间暴露于外部世界(通过负载平衡器)。您

我有一个Play 2.3.6应用程序,我使用WAR文件部署到运行在Elastic Beanstalk上的Tomcat。该应用程序为普通HTTP公开端口80。该应用程序还公开了另一个端口(2551),用于构建Akka集群。然而,当部署到AWS时,即使是在本地主机上,应用程序也被拒绝连接到端口2551。是否可以通过弹性Beanstalk上的Tomcat公开多个端口

它不应该通过servlet提供服务,而应该是一个普通的套接字。akka端口不应该仅仅在EC2实例之间暴露于外部世界(通过负载平衡器)。

您是否尝试过“工作者”环境层

基本上,我会为需要通过http公开的应用程序创建一个Web服务器层,并创建一个工作环境来执行任何后台工作,如内务管理、同步

以下是一些AWS文件,解释了两者之间的区别:

几周前,我向AWS支持部门提出了一个类似的问题,看看是否有可能在同一Beanstalk容器中运行2个应用程序:


他们的建议是在自己的容器中运行每个应用程序

更新: 我刚刚注意到你问了一个类似的问题
你能检查一下你的路线表吗?也许你需要连接一个网关(Internet或VPN)

我认为你不能在Elastic Beanstalk上公开多个端口,但我找不到任何官方来源来证实。人们在EB上观察到与Docker相同的行为:嗨,只是为了扩展一下。我不希望端口通过负载平衡器公开,而是在EC2实例之间。看起来路由表等都很好:(很难拆分为多个应用程序,但可能没有其他方法。