【发布时间】:2017-08-24 17:35:14
【问题描述】:
如何设置公共路由到 HTTP GCF? 所以,目前的默认路径是这样的。
https://us-central1-poised-breaker-162819.cloudfunctions.net/function-1
但是我想这样用
或
https://myfunction.com/thisroute
所以实际上是命名空间的问题,甚至是对适当函数的请求的代理问题。如何做到这一点?
更新 1
看来,我们可以为此使用 Endpoints 服务。但目前还不清楚它是否适用于 GCF。
【问题讨论】:
-
我不相信这可以在 Google 的云平台中完成 - 因为您需要某种 API 网关来将您的自定义路由转换为类似于 AWS 的 API 网关和 Lamba 的云功能路由.您可以考虑为您的服务构建一个吗?
-
@Rynak,你的意思是谷歌云不提供这样的功能作为服务吗?当前的解决方案是使用 nginx 作为代理运行单独的 VM。我只是不知道这对于 Google Cloud 而言是否是一个好的解决方案。
-
是的,这不是最好的解决方案,但 Google 目前正在追赶 AWS 等提供 API 网关即服务的公司。
-
@Ryank API Gateway 成本相当高(远高于运行函数本身的成本),通过 http 调用 lambda 函数的唯一方法是使用它。相比之下,由 http 触发的 Google Functions 会自动配置一个 https 端点供您使用,而无需任何额外费用。但是,如果您仍想代理 url,可以查看 Cloud Endpoints 或 App Engine 或其他东西。
-
@QuestionAndAnswer 我能想到的一种方法是使用 Google App Engine(您可以设置自定义域并导入您自己的 TLS 证书,或者只使用自动配置的 appspot.com 网址)和使用它将请求路由到云功能。如果你使用这个方法,你可能也可以通过 pub/sub 而不是 http 调用该函数。
标签: google-cloud-platform google-cloud-functions