【问题标题】:Deploying a java chat server(socket) on the internet在互联网上部署 java 聊天服务器(套接字)
【发布时间】:2015-04-16 02:42:05
【问题描述】:

我有一个简单的 java 聊天应用程序(服务器代码 + 客户端代码),它使用 java 的套接字 API 相互通信。这个应用程序是纯 java SE,不使用任何 servlet 或 JSP。 Client 是一个桌面 java swing 应用程序。我在 localhost 中测试了我的代码,它工作正常。

我的问题是关于在 Internet 上部署此服务器代码。如果我有个人服务器(具有静态 IP),我可以在其上部署服务器代码并将其配置为通过代码中预定义的端口号进行通信。问题是我没有。

现在我是否可以在 Internet 上找到这样的服务来托管我的代码并将其配置为通过我的自定义端口进行通信?否则无论如何我可以稍微调整我的代码,并使其与现有服务一起使用更接近我的预期。

编辑

正如答案中指出的那样,我已经设法通过 Amazon EC2 虚拟服务器做到这一点

【问题讨论】:

  • 它在哪个端口上运行,您听说过 openshift 吗? openshift.com
  • 我使用的是随机端口号(如 4222)。不,我还没有听说过openshift。我会检查
  • Openshift 几乎是免费的 Java Web 应用程序托管(最多 3 个墨盒),如果您将该端口切换到标准端口,您可以使用该服务,否则您需要使用一些云托管服务器。 Amazon EC2 或 Azure 是一种选择,但它们可能非常昂贵。由于它是基于 Java 的,您可能会根据您的服务器需求以每月 5-10 美元的价格购买一个小型 VPS 服务器。

标签: java sockets


【解决方案1】:

至少 Amazon AWS 有一个 EC2 的免费套餐,带有单个微实例和每月 750 小时的运行时间,请参阅此处:http://aws.amazon.com/free/

【讨论】:

  • 我会获得一个专属于我的 IP 地址吗?我可以像使用我的个人服务器一样使用它吗?
  • @DesirePRG:我有一段时间没有使用 AWS,但至少在机器获得开箱即用的唯一公共 IP 地址之前,请参阅此处:docs.aws.amazon.com/AWSEC2/latest/UserGuide/…
  • 我设法启动了一个 EC2 实例,并且能够完美地运行我的应用程序。但是我在我的机器上通过 ssh 运行了服务器代码,当我关闭我的 shell 时,服务器代码停止运行。有什么解决办法吗?
  • @DesirePRG:例如,您可以在 GNU 屏幕中运行它(gnu.org/software/screen,快速备忘单:aperiodic.net/screen/quick_reference),也可以查看其他选项:stackoverflow.com/questions/285015/…
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-04-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-01-29
相关资源
最近更新 更多