多个 google 云函数的异步触发器

Asynchronous triggers to multiple google cloud functions

我有一个 java 应用程序,它与多个需要在事件发生时触发的云功能进行交互。云函数需要异步触发。我读到 Pub/Sub 是一个异步触发 Cloud Functions 的选项,但由于某些架构限制,我无法使用它。

我尝试了 http 触发器,但我需要等到它完成才能触发我的其他云功能。

Pub/Sub触发器有什么替代方法吗?

不是真的。

使用 HTTP 触发器,客户端应用程序需要同步等待响应。

所有其他类型的函数(包括 pubsub 触发器)都是异步调用的。

不清楚您的“架构限制”是什么。但是您当然可以通过 HTTP 触发器接受工作单元,然后将其异步委托给 pubsub 触发器,以及 return 客户端用于轮询结果(如果需要)的一些唯一 ID。

Google pubsub 可以满足你异步触发云函数的需求。 pub/sub 不保证顺序。 Google pubsub 适用于不关心顺序的典型用例。

Google Cloud Functions 可以通过 HTTP 请求触发。但是,HTTP 触发器只能同步工作。

虽然pub/sub更适合异步需求,但还是可以引入同步支持,但代价是吞吐量/性能。其中一种方法是由发送方为消息分配一个唯一标识符,该标识符可以在接收方进行相应处理。另一种方法可以使用云监控通过跟踪未确认的指标来确定是否有尚未收到的消息。

但如果您的解决方案需要高可用性和可扩展性,建议尽量减少对顺序的依赖。

Pub/Sub 触发器的替代方法取决于您面临的确切限制以及体系结构和部署要求。