nats.rs icon indicating copy to clipboard operation
nats.rs copied to clipboard

Add reconnect method

Open Jarema opened this issue 5 months ago • 0 comments

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.

Jarema avatar Jan 30 '24 15:01 Jarema