PubSub会自动生成时间戳吗?

时间:2018-03-11 15:29:08

标签: google-cloud-pubsub

根据这里:https://cloud.google.com/pubsub/docs/reference/rest/v1/PubsubMessage

发布者向队列发送消息时,不应填充时间戳字段。因此,这使我认为PubSub会在收到发布者的消息时自动附加时间戳。

这是对的吗?

2 个答案:

答案 0 :(得分:2)

是的,你说得对。这是以下句子暗示的内容(来自您链接的docs):

  

publishTime:邮件发布的时间,填充方式   服务器在收到topics.publish调用时。

您可以自己测试一下:如果您转到Explorer的API并使用pubsub.projects.topics.publish方法发布到主题,而不提供publishTime,然后使用同一主题的订阅({{3} }),被拉的消息将有一个publishTime。

现在,关于publishTime的文档中还有一句话对我来说似乎有点不清楚:

  

发布商不得在topic.publish调用中填充它。

如果您实际尝试在发布调用中添加(格式正确的)publishTime,则不会出现错误。仍然,附加到您稍后提取的消息的实际publishTime是由pub / sub服务提供的消息(即,您给出的发布时间将被忽略)。

答案 1 :(得分:0)

它们确实使用publishTime生成。但是,在有多个发布者发布到Pub-Sub的情况下,可以将时间戳记附加到发布者中的每个事件。 https://cloud.google.com/pubsub/docs/ordering

(如果您对答案满意,请投票)