【问题标题】:How to set up a java server on AWS EC2如何在 AWS EC2 上设置 Java 服务器
【发布时间】:2021-04-28 16:43:08
【问题描述】:

我为我的班级用 Java 制作了一个 2 人游戏,但我希望在网上制作它。目前它已在我的本地主机socket = new Socket("localhost", 30000); 上设置并运行。但是我一直在阅读如何设置服务器。如果 EC2 启动并运行并安装了 java,我已经设置了一个 AWS 账户并拥有一个实例。我希望有人能告诉我如何设置服务器,或者是否有任何关于在 EC2 上设置服务器的好教程。另外,当它设置时,我用什么替换 localhost?

非常感谢!

【问题讨论】:

  • 有很多网络教程和视频可以帮助您将 Java webapp 部署到 EC2 上。
  • 据我所知,它不是一个 Java webapp。它与 servlet 等无关,所以我认为这些教程没有帮助,除非我被误解了
  • 我假设您的 Java 应用程序创建了一个套接字,以便它可以侦听入站消息。因此,虽然它不是侦听端口 80 或 443 的 HTTP 服务器,但它仍然是某种服务器,需要解决与已部署的 webapp 类似的问题。您是打算简单地通过 SSH 连接到机器,以便可以临时在命令行上运行您的应用程序,还是打算让它 24x7 无人值守地运行?
  • 是的。该应用程序创建一个服务器套接字并监听玩家何时连接到游戏并监听玩家发送的信息。我想我只想通过 SSH 连接,因为我只需要在玩游戏时启动服务器。我该怎么做呢?我应该按照建议使用弹性豆茎吗?感谢您的宝贵时间!
  • 在这种情况下,我可能不会使用 Beanstalk,因为您需要为更多的基础设施和更多的时间付费。我会考虑一个简单的 EBS 支持的 EC2 实例,并将您的应用程序设置为在 systemd(如果是 Ubuntu)或 pm2 或其他一些服务/流程管理器的控制下运行。在不需要时停止 EC2 实例,在需要时启动它,以降低成本。

标签: java amazon-web-services sockets amazon-ec2 server


【解决方案1】:

希望有人能告诉我如何设置服务器

与在本地计算机上运行它的方式相同。只是...运行它。像往常一样通过 ssh 进入您的 EC2 服务器并运行 java -jar yourapp.jar。没有什么神奇的事情发生。

另外,当它设置时,我用什么替换 localhost?

您的服务器的 IP 地址,在 AWS 控制台中列出。

请注意,您需要配置 AWS 实例所在的安全组,并打开端口 30000。

【讨论】:

  • 如何将我的文件夹推送到 EC2 服务器。我正在尝试这个 scp -i "cameronKenny.pem" TurnbasedNetworkingGame.tar.xz ec2-user@ec2-54-155-231-59.eu-west-1.compute.amazonaws.com:/usr/java/ 。但是我不断收到此错误:/usr/libexec/grepconf.sh: line 5: grep: command not found bash: scp: command not found lost connection
猜你喜欢
  • 1970-01-01
  • 2019-07-19
  • 2020-08-28
  • 2014-09-19
  • 2023-03-17
  • 2021-05-04
  • 2014-10-28
  • 1970-01-01
  • 2021-04-01
相关资源
最近更新 更多