gpt4 book ai didi

python - 使用 Python 客户端 API 在 Google Cloud Pub/Sub 中运行同步拉取

转载 作者:太空狗 更新时间:2023-10-29 21:02:21 26 4
gpt4 key购买 nike

我在 Python 客户端 API 中找不到 returnImmediately 标志。有什么具体原因吗?有没有另一种方法可以从 Python 中的订阅中同步提取排队的消息?

最佳答案

Google 不提供此类内容。但是您可以通过实现自己的队列轻松解决此问题

from Queue import Queue

from google.cloud import pubsub

subscriber = pubsub.SubscriberClient()
topic = "projects/newproject-xxxxx/topics/tarunlalwani"
subscription_name = 'projects/newproject-xxxxx/subscriptions/sub1'

class SynchronousSubscription(object):

def callback(self, message):
print(message.data)
message.ack()
self.pending_messages.put(message)

def __init__(self, subscription):
self.subscription_future = subscriber.subscribe(subscription_name, self.callback)
self.pending_messages = Queue()

def consume_sync(self):
return self.pending_messages.get()

sub = SynchronousSubscription(subscription_name)
data = sub.consume_sync()

当我测试时,它确实对我很有用

Working Example

关于python - 使用 Python 客户端 API 在 Google Cloud Pub/Sub 中运行同步拉取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46896828/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com