Google cloud platform GCP管理多个云功能流的最佳方式

Google cloud platform GCP管理多个云功能流的最佳方式,google-cloud-platform,google-cloud-functions,workflow,google-cloud-pubsub,Google Cloud Platform,Google Cloud Functions,Workflow,Google Cloud Pubsub,我正在学习GCP,并阅读有关沟通和管理云功能的不同方式的书籍,最终我想知道何时使用提供GCP的每项服务 因此,我一直在阅读有关GCP Composer,GCP工作流,Cloud Pub/Sub,但我不清楚什么时候应该使用每一个,或者使用简单的HTTP调用 我知道这在很大程度上取决于您正在构建的应用程序,但例如,如果我正在构建一个支付网关,并且在验证支付后应该启动一些功能,例如发送电子邮件、制作不相关的业务逻辑、将购买添加到销售平台。那么,我应该用哪一种方法来管理这个流程,在哪种情况下使用其他方法

我正在学习GCP,并阅读有关沟通和管理云功能的不同方式的书籍,最终我想知道何时使用提供GCP的每项服务

因此,我一直在阅读有关
GCP Composer
GCP工作流
Cloud Pub/Sub
,但我不清楚什么时候应该使用每一个,或者使用简单的HTTP调用


我知道这在很大程度上取决于您正在构建的应用程序,但例如,如果我正在构建一个支付网关,并且在验证支付后应该启动一些功能,例如发送电子邮件、制作不相关的业务逻辑、将购买添加到销售平台。那么,我应该用哪一种方法来管理这个流程,在哪种情况下使用其他方法会更好?我应该使用事件来创建具有发布/订阅的异步流,还是使用复杂的解决方案,如composer和workflows?或者只是简单的HTTP调用?

一如既往,这取决于!!即使在您的用例中,也要视情况而定!好的,在付款后,你想发送一封电子邮件,建立业务逻辑,将订单添加到你的数据库中

但是,是所有这些操作都可以并行完成,还是您需要按特定顺序执行它们,如果某个步骤失败,您就停止该过程

在第一种情况下,您可以使用Cloud PubSub发布一条消息(payment OK),然后将多个功能并行展开。否则,您可以使用工作流测试函数的响应,然后调用或不调用以下函数。使用composer,您可以执行更多的检查和操作

您还可以想象在24小时后发送另一封电子邮件,感谢客户的订单,并使用云任务延迟操作

您谈到了云功能,但您也有其他解决方案来承载GCP上的代码:应用程序引擎和云运行。大多数情况下,云功能是单一用途的。发送电子邮件是一个完美的功能

现在,如果您有“一套功能”来浏览您的库存、查看对象详细信息、查看价格和预订对象(验证订单“预订”仓库中的订单内容),“功能”都是单一用途,但与同一领域相关:仓库管理。因此,您可以创建一个Web服务器,提出不同的路径来管理仓库(如果愿意,可以为仓库提供微服务),并将其托管在CloudRun或App Engine上


每种产品都有它的优点和缺点。当您了解GCP上的存储时,也会看到这一点。大多数情况下,你可以使用多种产品来实现目标,但如果你没有使用正确的产品,它将变得更慢,或者成本更高。

一如既往,这取决于!!即使在您的用例中,也要视情况而定!好的,在付款后,你想发送一封电子邮件,建立业务逻辑,将订单添加到你的数据库中

但是,是所有这些操作都可以并行完成,还是您需要按特定顺序执行它们,如果某个步骤失败,您就停止该过程

在第一种情况下,您可以使用Cloud PubSub发布一条消息(payment OK),然后将多个功能并行展开。否则,您可以使用工作流测试函数的响应,然后调用或不调用以下函数。使用composer,您可以执行更多的检查和操作

您还可以想象在24小时后发送另一封电子邮件,感谢客户的订单,并使用云任务延迟操作

您谈到了云功能,但您也有其他解决方案来承载GCP上的代码:应用程序引擎和云运行。大多数情况下,云功能是单一用途的。发送电子邮件是一个完美的功能

现在,如果您有“一套功能”来浏览您的库存、查看对象详细信息、查看价格和预订对象(验证订单“预订”仓库中的订单内容),“功能”都是单一用途,但与同一领域相关:仓库管理。因此,您可以创建一个Web服务器,提出不同的路径来管理仓库(如果愿意,可以为仓库提供微服务),并将其托管在CloudRun或App Engine上

每种产品都有它的优点和缺点。当您了解GCP上的存储时,也会看到这一点。大多数情况下,你可以通过几种产品来实现目标,但如果你不使用正确的产品,它会变得更慢,或者成本更高