Почему количество сообщений не совпадает, когда я получаю сообщения, используя gcloud cli? - PullRequest
0 голосов
/ 30 ноября 2018

Это очень странно.

Я использую gcloud pubsub subscriptions pull message-blocking-SUB --limit 10, пытаюсь получить сообщения из message-blocking-SUB подписки.

Вот результаты:

☁  nodejs-gcp [master] ⚡  gcloud pubsub subscriptions pull message-blocking-SUB --limit 10
┌──────────────────────────────────────────┬─────────────────┬────────────┬──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
│                   DATA                   │    MESSAGE_ID   │ ATTRIBUTES │                                                                              ACK_ID                                                                              │
├──────────────────────────────────────────┼─────────────────┼────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│ {"data":"Hello, world! - 1543554888273"} │ 283307349579869 │            │ QV5AEkw2B0RJUytDCypYEU4EISE-MD5FU0RQBhYsXUZIUTcZCGhRDk9eIz81IChFEAtTE1FcdhNCEGgzXHUHUQ0YdHpndmoLFAJTFFl-VVsJPGh-Y3cPUg4ZdX5lfG9dGgkETHvi4M-dxOksZhg9XBJLLD5-PTJF │
└──────────────────────────────────────────┴─────────────────┴────────────┴──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
☁  nodejs-gcp [master] ⚡  gcloud pubsub subscriptions pull message-blocking-SUB --limit 10
┌──────────────────────────────────────────┬─────────────────┬────────────┬────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
│                   DATA                   │    MESSAGE_ID   │ ATTRIBUTES │                                                                               ACK_ID                                                                               │
├──────────────────────────────────────────┼─────────────────┼────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│ {"data":"Hello, world! - 1543555283170"} │ 283307447044599 │            │ XkASTDYHRElTK0MLKlgRTgQhIT4wPkVTRFAGFixdRkhRNxkIaFEOT14jPzUgKEUQC1MTUVx1E0wQaV0zdQdRDRlze2ZzaVsTBlNBVXRfURsfWVx-SgVZDhpyemVxbVoXBQdMWlbD5I-Lod0sZhs9XBJLLD5-PTJFQQ │
│ {"data":"Hello, world! - 1543555288172"} │ 283307327268587 │            │ XkASTDYHRElTK0MLKlgRTgQhIT4wPkVTRFAGFixdRkhRNxkIaFEOT14jPzUgKEUQC1MTUVx1E0wQaV0zdQdRDRlze2ZzaVsTBlNBVXReURsfWVx-SgVZDhpyemJ3bVgVCQdNVFbD5I-Lod0sZhs9XBJLLD5-PTJFQQ │
│ {"data":"Hello, world! - 1543555293176"} │ 283307486528068 │            │ XkASTDYHRElTK0MLKlgRTgQhIT4wPkVTRFAGFixdRkhRNxkIaFEOT14jPzUgKEUQC1MTUVx1E0wQaV0zdQdRDRlze2ZzaVsTBlNBVXRdURsfWVx-SgVZDhpyemV9bF8RCQJDW1bD5I-Lod0sZhs9XBJLLD5-PTJFQQ │
└──────────────────────────────────────────┴─────────────────┴────────────┴────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
☁  nodejs-gcp [master] ⚡  gcloud pubsub subscriptions pull message-blocking-SUB --limit 10
┌───────────────────────────────┬─────────────────┬────────────┬──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
│              DATA             │    MESSAGE_ID   │ ATTRIBUTES │                                                                              ACK_ID                                                                              │
├───────────────────────────────┼─────────────────┼────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│ Hello, world! - 1543547000557 │ 283191392654279 │            │ QV5AEkw2B0RJUytDCypYEU4EISE-MD5FU0RQBhYsXUZIUTcZCGhRDk9eIz81IChFEAtTE1FcdhNMEG4zXHUHUQ0YdHpnd2NYEgkCTFl-VVsJPGh-Y3cPUgwQc35od2xfFwMFTHvi4M-dxOksZhg9XBJLLD5-PTJF │
│ Hello, world! - 1543547015562 │ 283191378142602 │            │ QV5AEkw2B0RJUytDCypYEU4EISE-MD5FU0RQBhYsXUZIUTcZCGhRDk9eIz81IChFEAtTE1FcdhNMEG4zXHUHUQ0YdHpnd2NYEgkCTFl_VVsJPGh-Y3cPUgwQc35mfWteEQcCR3vi4M-dxOksZhg9XBJLLD5-PTJF │
│ Hello, world! - 1543547020563 │ 283191323745952 │            │ QV5AEkw2B0RJUytDCypYEU4EISE-MD5FU0RQBhYsXUZIUTcZCGhRDk9eIz81IChFEAtTE1FcdhNMEG4zXHUHUQ0YdHpnd2NYEgkCTFl8VVsJPGh-Y3cPUgwQc35jdm1eFggHR3vi4M-dxOksZhg9XBJLLD5-PTJF │
└───────────────────────────────┴─────────────────┴────────────┴──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
☁  nodejs-gcp [master] ⚡  gcloud pubsub subscriptions pull message-blocking-SUB --limit 10
┌──────────────────────────────────────────┬─────────────────┬────────────┬──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
│                   DATA                   │    MESSAGE_ID   │ ATTRIBUTES │                                                                              ACK_ID                                                                              │
├──────────────────────────────────────────┼─────────────────┼────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│ {"data":"Hello, world! - 1543554888273"} │ 283307349579869 │            │ QV5AEkw2B0RJUytDCypYEU4EISE-MD5FU0RQBhYsXUZIUTcZCGhRDk9eIz81IChFEAtTE1FcdhNCEGgzXHUHUQ0YdHpndmoLFAJTFFl-VVsJPGh-Y3cPUg4ZdX5lfG9dGgkETHvi4M-dxOksZhg9XBJLLD5-PTJF │
└──────────────────────────────────────────┴─────────────────┴────────────┴──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
☁  nodejs-gcp [master] ⚡

Мое сообщениеВ очереди три сообщения.

Я запускаю эту команду четыре раза.Кажется, что результат отличается для каждого времени.

Я ожидаю, что результатом всегда должно быть три сообщения.

Я не понимаю.

1 Ответ

0 голосов
/ 30 ноября 2018

Вы уверены, что ваша подписка содержит только 3 сообщения?Ваши значения данных показывают иначе.

{"data":"Hello, world! - 1543555283170"} │ 283307447044599
{"data":"Hello, world! - 1543555288172"} │ 283307327268587
{"data":"Hello, world! - 1543555293176"} │ 283307486528068
{"data":"Hello, world! - 1543554888273"} │ 283307349579869
Hello, world! - 1543547000557 │ 283191392654279
Hello, world! - 1543547015562 │ 283191378142602
Hello, world! - 1543547020563 │ 283191323745952

Я подозреваю, что некоторые из ваших недоразумений заключаются в том, что когда вы извлекаете сообщения без их подтверждения, они не доступны в течение некоторого периода времени, я считаю, что по умолчанию установлено значение 10 с или около того.Pubsub предполагает, что сообщения, которые были извлечены, по-прежнему работают, и могут скоро подтвердить сообщение.Пока этот промежуток времени не пройдет, вы увидите только новые сообщения или сообщения, срок доставки которых истек.

...