【问题标题】:Connect to Java server socket from google app engine从谷歌应用引擎连接到 Java 服务器套接字
【发布时间】:2014-01-24 20:58:41
【问题描述】:

我的要求是这样的:

客户端使用一些参数向应用引擎服务器发送请求。

应用引擎服务器必须连接到运行在 Windows 机器上的某个程序来计算响应。(我正在使用 Java 服务器套接字实现这个程序,这样做是否正确?)

应用引擎服务器将此响应传递给客户端。

如何从运行在 google app engine 上的 Web 应用程序连接到 java 服务器套接字?

【问题讨论】:

    标签: java google-app-engine sockets


    【解决方案1】:

    App Engine 确实支持 出站 套接字,但目前它仅在实验基础上提供,并且仅适用于付费应用程序。

    请参考:https://developers.google.com/appengine/docs/java/sockets/

    上述文档确实提到您不能创建侦听套接字,而只能创建出站套接字。请查看允许连接的不同条件,看看它是否满足您的需求。

    如果 API 的当前实验状态 + 它必须用于付费应用程序的事实不符合您的要求,那么 URL 获取可能是您的出路。

    就您的要求而言,您是否需要让客户端一直等待以确定从您的 App Engine 应用程序到另一台服务器所需的时间?如果没有,我建议接受请求并在单独的任务中执行操作。一旦任务完成,它可以通过 Channel API 通知客户端。

    【讨论】:

    • 客户端实际上将是一个 android 应用程序。我使用 Channel api 与客户端浏览器对话,它也适用于 android 吗?
    【解决方案2】:

    AppEngine 仅提供 URL Fetch Java API 来建立传出连接,因此您的外部服务器(在 Windows 机器上)必须运行某种 HTTP 或 HTTPS 服务器。 AppEngine 不支持到任意套接字的传出连接。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-08-21
      • 1970-01-01
      • 2016-08-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-12-25
      相关资源
      最近更新 更多