push messages and slow start algorithm

527 views
Skip to first unread message

Ole Hjalmar Herje

unread,
Apr 7, 2017, 4:15:14 AM4/7/17
to Google Cloud Pub/Sub Discussions
Hi, the push subscriber documentation states "With slow-start, Google Cloud Pub/Sub starts by sending a single message at a time, and doubles up with each successful delivery, until it reaches the maximum number of concurrent messages outstanding. Any time there is a delivery failure, the number of messages outstanding allowed for the subscription is halved." (https://cloud.google.com/pubsub/docs/push)

My question is, what happens when there is a pause in activity for a topic, let us say for example no new messages are published for an hour. Will the slow start algorithm start over when a new messages arrive or will it remember the last successful rate used for that subscriber? My concern is that we will get latency spikes when the queue activity is not constantly high.

Thomas Kneeland

unread,
Apr 7, 2017, 11:31:56 AM4/7/17
to Ole Hjalmar Herje, Google Cloud Pub/Sub Discussions
Hi Ole,

The short answer is: it depends, and it's not something you can rely on.

The exact details of our slow-start algorithm should be considered implementation details that are subject to change; we do not advise relying critically upon them. (An example of something you should *not* do: intentionally failing a certain percentage of RPCs to implement a rudimentary flow-control.)

Even aside from slowstart limitations, low-activity subscriptions are naturally subject to much higher tail latencies due to a variety of effects, most notably cache evictions.

Best,
Thomas

On Fri, Apr 7, 2017 at 2:27 AM, Ole Hjalmar Herje <olehj...@gmail.com> wrote:
Hi, the push subscriber documentation states "With slow-start, Google Cloud Pub/Sub starts by sending a single message at a time, and doubles up with each successful delivery, until it reaches the maximum number of concurrent messages outstanding. Any time there is a delivery failure, the number of messages outstanding allowed for the subscription is halved." (https://cloud.google.com/pubsub/docs/push)

My question is, what happens when there is a pause in activity for a topic, let us say for example no new messages are published for an hour. Will the slow start algorithm start over when a new messages arrive or will it remember the last successful rate used for that subscriber? My concern is that we will get latency spikes when the queue activity is not constantly high.

--
You received this message because you are subscribed to the Google Groups "Google Cloud Pub/Sub Discussions" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cloud-pubsub-discuss+unsub...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/cloud-pubsub-discuss/b8d3feb4-7eff-44ef-b18b-3d68477af4f0%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply all
Reply to author
Forward
0 new messages