设计一个可扩展、解耦的管道,用于将作业从生产者(作业生成器)交付给消费者(作业运行器),并允许在不降低现有性能的情况下添加新应用程序。您应该使用哪种方法?
选择一个答案
点击一个选项来检查您的答案。
正确答案: 使用 Cloud Pub/Sub 主题发布作业,并使用订阅来执行作业.
为什么这是答案
正确答案是使用 Cloud Pub/Sub 主题发布作业,并使用订阅来执行作业。Cloud Pub/Sub 是一种完全托管的异步消息传递服务,它天然支持可扩展性和解耦。生产者(作业生成器)将作业发布到 Pub/Sub 主题,而消费者(作业运行器)则通过订阅主题来接收和处理作业。这种发布/订阅模式允许生产者和消费者独立扩展,并且彼此之间无需直接了解。当需要添加新应用程序时,只需创建新的订阅即可接收相关作业,而不会影响现有性能。 其他选项的缺点: 在 App Engine 上创建 API 会引入额外的开发和维护负担,并且可能成为性能瓶颈,尤其是在高并发场景下。 在 Cloud SQL 或 Cloud Spanner 上创建表来插入/删除作业信息,虽然可以实现消息传递,但数据库通常不适合作为高吞吐量、低延迟的消息队列。频繁的插入/删除操作会增加数据库负载,影响性能,并且难以实现高效的扇出(fan-out)模式,即一个作业被多个消费者处理。
通过考试 — 无需无休止地寻找答案
将本次考试的所有验证问题和解释集中在一处,节省数小时的准备时间。1,000+ 认证 · 20+ 语言 · 免费开始。
更快通过考试 → 无需银行卡