Replies: 4 comments 5 replies
-
Hi @SirDave0 what is the version of the server that you are using? Is this with JetStream enabled? Do you mean that you see routes becoming slow consumers after 10s often? |
Beta Was this translation helpful? Give feedback.
-
Hi @wallyqs the image I used is |
Beta Was this translation helpful? Give feedback.
-
From looking at https://github.com/nats-io/nack#getting-started it seems that to integrate jetStream we would need to specify every subject, and manage a Stream CRD in the namespace. Is there a ready-to-use JetStream server configuration that enables it? |
Beta Was this translation helpful? Give feedback.
-
Is there a way to measure the impact of occasion server slow consumers? I don't see in |
Beta Was this translation helpful? Give feedback.
-
The slow consumer metric being reported here is
nats_varz_slow_consumer_stats_routes
(to distinguish fromnats_varz_slow_consumer_stats_client
), which happens during a server cluster rollout restart.For example, I have a NATS server k8s StatefulSet with 3 replicas/nodes: nats0, nats1, and nats2. For our needs, we sometimes want to refresh and redistribute external client connections to this NATS server cluster, and we do a rolling restart. We will always ensure there is at least one Nats pod available at all times (no downtime from the client's perspective).
It is in this process that nats1 and nats2 can report a restarting nats0 as a slow consumer, as it takes time to become available again to digest the gossip from nats1 and nats2. Raising the
write_deadline
in NATS server configuration (from 15s to 20s), for example, will avoid this phenomenon. But it also means we detect real client slow consumers 5 seconds late.I wonder what the impacts of "routes", or internal server slow consumers are to the application, and how to address it? Could there be message loss due to this?
Beta Was this translation helpful? Give feedback.
All reactions