我正在寻找一种标准方法将我的 iOS 应用程序与 Google 云 Pub/Sub 集成。经过两天的时间在互联网上的研究,我没有找到任何直接的实现方法。只是想知道从哪里开始。
有两种方法可以从 Google Cloud Pub/Sub 发布/接收消息。
调用Cloud Pub/Sub REST API。 您将使用首选的 iOS REST 客户端 SDK 来处理 REST 请求和响应。您确实需要注意此处记录的 REST API 身份验证。直接连接到 REST 端点的一个缺点是,您最终会在移动应用程序中嵌入或参数化 GCP 特定信息,例如 GCP 项目和 Pub/Sub 主题信息。升级或发布新的移动应用程序时,这可能会产生一些开销。
使用 Cloud Pub/Sub 的网关/代理。 这个想法是构建一个代理 Pub/Sub 请求的移动后端。网关实现可以是 AppEngine、Cloud Run 或 GKE (Kubernetes)。流程如下所示:
iOS app -> GKE Pub/Sub Proxy -> Cloud Pub/Sub -> DataFlow (or other services)
代理可以处理一些云和 Pub/Sub 特定功能,例如身份验证、Pub/Sub 消息批处理等。本质上从移动应用程序端卸载它们,提供更好的分离模式。