nats.rs
nats.rs copied to clipboard
Add reconnect method
Proposed change
Implement reconnect method according to an connection ADR update https://github.com/nats-io/nats-architecture-and-design/issues/259
From the ADR spec update:
On-Demand reconnect
Client should have a way that allows users to force reconnection process. This can be useful for refreshing auth or rebalancing clients.
When triggered, client will drop connection to the current server and perform standard reconnection process. That means that all subscriptions and consumers should be resubscribed and their work resumed after successful reconnect where all reconnect options are respected.
For most clients, that means having a reconnect
method on the Client/Connection handle.
Use case
If for whatever reason client would like to reconnect, right now they have to recreate all Core nats subscriptons and Jetstream Consumers. This can be unnecessary complication, especially considering that client already can reconnect and recover all subscription and consumers processing. It just is missing API for triggering it on demand.