gpt4 book ai didi

java - 从公共(public) Internet 访问专用网络上网关后面的计算机上的 REST 端点

转载 作者:行者123 更新时间:2023-11-30 07:35:29 24 4
gpt4 key购买 nike

我家里有一台服务器正在运行,它位于防火墙和网关后面。该服务器托管一个用 Java 编写的基于 REST 的服务。我希望公共(public) Internet 上的移动应用程序客户端能够访问此服务器。

我不想更改我的网关/防火墙配置。

实现此设置的标准方法是什么?

我想到了以下几种办法:

  • 使用远程端口转发。我可以有一个云虚拟机,作为登陆机,并在这个云上打开 SSH 和 HTTP 端口。远程用户将通过该云机器进行连接。在HTTP情况下,我可以重定向http数据包,ssh也可以一劳永逸。

  • 使用云中继服务。我无法使用 Azure 中继服务,因为它们不提供 Java 库。

我可能还需要从外部网络通过 SSH 连接到服务器。

实现这一目标的建议方法是什么?

最佳答案

您可以尝试使用Azure服务总线实现自己的中继服务,请参阅https://azure.microsoft.com/en-us/documentation/articles/service-bus-java-how-to-use-queues/了解如何开始。

+---------+ send +----------+ send +------------+ req  +-------------+
|Home Serv| <-> |ServiceBus| <-> |Azure WebApp| <-> |Mobile Client|
+---------+ recv +----------+ recv +------------+ resp +-------------+

上面解释了:

  • Home Service 通过服务总线队列与 Azure WebApp 进行消息通信。
  • 移动客户端通过 HTTP 请求和响应与 Azure WebApp 进行通信。
  • 与上述 ServiceBus 的所有通信均通过 AMQP 或 HTTP REST API 实现,这些 API 可以通过网关,但会导致时间延迟。

希望有帮助。谨致问候。

关于java - 从公共(public) Internet 访问专用网络上网关后面的计算机上的 REST 端点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35454640/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com