-
Notifications
You must be signed in to change notification settings - Fork 53
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Integrate passive disconnect handling and automatic reconnect functionality #2278
Conversation
94ed8c4
to
612d2f7
Compare
612d2f7
to
6609d69
Compare
6609d69
to
4561923
Compare
4561923
to
0a11f57
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Changelog is missing
// as improper configuration could negatively impact performance or pub/sub resiliency. | ||
// A 3-second interval provides a reasonable balance between connection validation | ||
// and performance overhead. | ||
pub const CONNECTION_CHECKS_INTERVAL: Duration = Duration::from_secs(3); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do you have benchmarking results to confirm that?
submodules/redis-rs
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Changes from submodule should be listed and described in the PR
0a11f57
to
293a345
Compare
293a345
to
38a3171
Compare
…nality. Maintaining a continuous connection to the server(s) is crucial, especially in PubSub contexts, where undetected disconnects can render the listener inoperable. Additionally, immediately attempting to reestablish a closed connection reduces latency for the next command. This functionality is implemented differently for standalone and cluster modes: - In standalone mode, it utilizes the reconnect functionality, triggered immediately upon detecting a disconnect, without waiting for the next command. - In cluster mode, it relies on the changes introduced in amazon-contributing/redis-rs@2c7faec. The validation processes are lightweight in terms of performance and run every 3 seconds. Signed-off-by: ikolomi <ikolomin@amazon.com>
38a3171
to
68c6b3b
Compare
Maintaining a continuous connection to the server(s) is crucial, especially in PubSub contexts, where undetected disconnects can render the listener inoperable.
Additionally, immediately attempting to reestablish a closed connection reduces latency for the next command.
This functionality is implemented differently for standalone and cluster modes:
The validation processes are lightweight in terms of performance and run every 3 seconds.