我正在构建一个不断附加到缓冲区的应用程序,而许多读者独立地使用此缓冲区(一次写入多次读取/ WORM)。起初我想过使用Apache Kafka,但由于我更喜欢as-a-service选项,我开始调查AWS Kinesis Streams + KCL,看来我可以用它们来完成这项任务。
基本上我需要2个功能:排序(所有读者必须以相同的顺序读取事件)以及从阅读器开始消耗的缓冲区中选择偏移量的能力。
现在我还在评估Google云端平台。在我阅读文档时,似乎Google Pub / Sub被建议与AWS Kinesis Stream等效,但在更详细的层面上,这些产品似乎有很多不同:
如果我做对了,PubSub不能被认为是Kinesis的等价物。也许如果与Google Dataflow一起使用?我必须承认我仍然无法理解。
那么,PubSub是Kinesis的替代品吗?如果没有,是否有符合我要求的Google云端产品?
谢谢!
答案 0 :(得分:5)
一个相当复杂的解决方案,但它可能有所帮助:
希望有所帮助。
答案 1 :(得分:2)
Pub/Sub 现在支持 ordering natively。至于在消费之前需要订阅(Kafka中的~consumer group),这对用户来说很少是问题。如果不出意外,您可以创建 snapshots,它允许您将新订阅重置为任何其他现有订阅的状态。
这有点晚了,但是@Renan,如果您还在观看,很想听听您最终是如何构建系统的。