Rumah >pembangunan bahagian belakang >Golang >Tetapan Google Pub/Sub secara pemrograman mendayakan pengekalan mesej untuk topik

Tetapan Google Pub/Sub secara pemrograman mendayakan pengekalan mesej untuk topik

WBOY
WBOYke hadapan
2024-02-09 08:10:081230semak imbas

Google Pub/Sub 设置以编程方式启用主题的消息保留

editor php Xigua membawakan anda kemahiran baharu tentang Google Pub/Sub. Anda kini boleh menetapkan pengekalan mesej secara pemrograman untuk memastikan mesej dalam topik anda tidak hilang. Ini adalah ciri yang sangat berguna, terutamanya apabila bekerja dengan data atau tugas penting yang memerlukan masa pemprosesan yang lama. Dengan mendayakan pengekalan mesej, anda boleh memproses mesej dengan yakin tanpa perlu risau bahawa mesej itu akan hilang dalam proses itu. Seterusnya, kami akan memperincikan cara mendayakan pengekalan mesej secara pemrograman untuk topik menggunakan tetapan Google Pub/Sub. Nantikan!

Kandungan soalan

Dalam pub/sub Google, jika topik dibuat, kami boleh menetapkan dasar pengekalan

https://console.cloud.google.com/cloudpubsub

Dengan mengklik, mengedit, mengedit tema, mengemas kini

Adakah mungkin untuk mengemas kini nilai ini secara pemrograman?

Saya melihat tahap langganan mempunyai konfigurasi ini https://github.com/googleapis/google-cloud-go/blob/main/pubsub/subscription.go#L564 Tetapi tidak pada tahap topik?

Penyelesaian

Ya, pengekalan mesej boleh dikonfigurasikan secara atur cara dalam topik. Dalam Go, anda boleh menetapkan RetentionDurationTopicConfig 中并将其传递给 CreateTopicWithConfig untuk melakukan ini pada penciptaan:

tc := TopicConfig{
    RetentionDuration = 168 * time.Hour
}
topic, err := c.CreateTopicWithConfig(context.Background(), "my-topic", tc)

Untuk melakukan ini semasa mengemas kini, pergi ke TopicConfigToUpdate 中设置属性并将其传递给 Update:

topic := client.Topic("my-topic")
topicConfig, err := topic.Update(ctx, pubsub.TopicConfigToUpdate{
  RetentionDuration = 168 * time.Hour
})

Atas ialah kandungan terperinci Tetapan Google Pub/Sub secara pemrograman mendayakan pengekalan mesej untuk topik. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:stackoverflow.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam