| Package | Description |
|---|---|
| redis.clients.jedis | |
| redis.clients.jedis.mcf |
This package contains the classes that are related to Active-Active cluster(s) and Multi-Cluster
failover.
|
| Modifier and Type | Class and Description |
|---|---|
class |
HostAndPort |
| Modifier and Type | Method and Description |
|---|---|
Endpoint |
MultiDbClient.getActiveDatabaseEndpoint()
Returns the currently active database endpoint.
|
Endpoint |
MultiDbConfig.DatabaseConfig.getEndpoint()
Returns the Redis endpoint (host and port) for this database.
|
| Modifier and Type | Method and Description |
|---|---|
java.util.Set<Endpoint> |
MultiDbClient.getDatabaseEndpoints()
Returns the set of all configured database endpoints.
|
| Modifier and Type | Method and Description |
|---|---|
void |
MultiDbClient.addDatabase(Endpoint endpoint,
float weight,
JedisClientConfig clientConfig)
Dynamically adds a new database endpoint to the multi-database client.
|
static MultiDbConfig.DatabaseConfig.Builder |
MultiDbConfig.DatabaseConfig.builder(Endpoint endpoint,
JedisClientConfig clientConfig)
Creates a new Builder instance for configuring a DatabaseConfig.
|
MultiDbConfig.Builder |
MultiDbConfig.Builder.database(Endpoint endpoint,
float weight,
JedisClientConfig clientConfig)
Adds a database endpoint with custom client configuration.
|
void |
MultiDbClient.forceActiveDatabase(Endpoint endpoint,
long forcedActiveDurationMs)
Forces the client to switch to a specific database for a duration.
|
boolean |
MultiDbClient.isHealthy(Endpoint endpoint)
Returns the health status of the specified database.
|
void |
MultiDbClient.removeDatabase(Endpoint endpoint)
Dynamically removes a database endpoint from the multi-database client.
|
void |
MultiDbClient.setActiveDatabase(Endpoint endpoint)
Manually switches to the specified endpoint.
|
| Constructor and Description |
|---|
Builder(Endpoint endpoint,
JedisClientConfig clientConfig)
Constructs a new Builder with required endpoint and client configuration.
|
DatabaseConfig(Endpoint endpoint,
JedisClientConfig clientConfig)
Constructs a DatabaseConfig with basic endpoint and client configuration.
|
DatabaseConfig(Endpoint endpoint,
JedisClientConfig clientConfig,
org.apache.commons.pool2.impl.GenericObjectPoolConfig<Connection> connectionPoolConfig)
Constructs a DatabaseConfig with endpoint, client, and connection pool configuration.
|
| Modifier and Type | Method and Description |
|---|---|
Endpoint |
MultiDbConnectionProvider.getActiveEndpoint()
Returns the active endpoint
Active endpoint is the one which is currently being used for all operations.
|
Endpoint |
HealthCheck.getEndpoint() |
Endpoint |
DatabaseSwitchEvent.getEndpoint() |
Endpoint |
MultiDbConnectionProvider.Database.getEndpoint() |
Endpoint |
HealthStatusChangeEvent.getEndpoint() |
Endpoint |
HealthCheckImpl.getEndpoint() |
Endpoint |
LagAwareStrategy.Config.getRestEndpoint() |
| Modifier and Type | Method and Description |
|---|---|
java.util.Set<Endpoint> |
MultiDbConnectionProvider.getEndpoints()
Returns the set of all configured endpoints.
|
| Modifier and Type | Method and Description |
|---|---|
HealthCheck |
HealthStatusManager.add(Endpoint endpoint,
HealthCheckStrategy strategy) |
void |
HealthStatusManager.addAll(Endpoint[] endpoints,
HealthCheckStrategy strategy) |
static LagAwareStrategy.Config.ConfigBuilder |
LagAwareStrategy.Config.builder(Endpoint restEndpoint,
java.util.function.Supplier<RedisCredentials> credentialsSupplier)
Create a new builder for LagAwareStrategy.Config.
|
static LagAwareStrategy.Config |
LagAwareStrategy.Config.create(Endpoint restEndpoint,
java.util.function.Supplier<RedisCredentials> credentialsSupplier)
Create a new Config instance with default values.
|
static LagAwareStrategy.Config |
LagAwareStrategy.Config.databaseAvailability(Endpoint restEndpoint,
java.util.function.Supplier<RedisCredentials> credentialsSupplier)
Perform standard datapath validation only.
|
HealthStatus |
PingStrategy.doHealthCheck(Endpoint endpoint) |
HealthStatus |
LagAwareStrategy.doHealthCheck(Endpoint endpoint) |
HealthStatus |
HealthCheckStrategy.doHealthCheck(Endpoint endpoint)
Perform the health check for the given endpoint.
|
void |
MultiDbConnectionProvider.forceActiveDatabase(Endpoint endpoint,
long forcedActiveDuration) |
HealthCheck |
HealthCheckCollection.get(Endpoint endpoint) |
Connection |
MultiDbConnectionProvider.getConnection(Endpoint endpoint) |
MultiDbConnectionProvider.Database |
MultiDbConnectionProvider.getDatabase(Endpoint endpoint) |
HealthStatus |
HealthStatusManager.getHealthStatus(Endpoint endpoint) |
long |
HealthStatusManager.getMaxWaitFor(Endpoint endpoint) |
boolean |
HealthStatusManager.hasHealthCheck(Endpoint endpoint) |
boolean |
MultiDbConnectionProvider.isHealthy(Endpoint endpoint)
Returns the health state of the given endpoint
|
static LagAwareStrategy.Config |
LagAwareStrategy.Config.lagAware(Endpoint restEndpoint,
java.util.function.Supplier<RedisCredentials> credentialsSupplier)
Perform standard datapath validation and lag validation using the default lag tolerance.
|
static LagAwareStrategy.Config |
LagAwareStrategy.Config.lagAwareWithTolerance(Endpoint restEndpoint,
java.util.function.Supplier<RedisCredentials> credentialsSupplier,
java.time.Duration availabilityLagTolerance)
Perform standard datapath validation and lag validation using the specified lag tolerance.
|
void |
MultiDbConnectionProvider.onDatabaseSwitch(SwitchReason reason,
Endpoint endpoint,
MultiDbConnectionProvider.Database database) |
void |
HealthStatusManager.registerListener(Endpoint endpoint,
HealthStatusListener listener) |
void |
HealthStatusManager.remove(Endpoint endpoint) |
void |
MultiDbConnectionProvider.remove(Endpoint endpoint)
Removes a database endpoint from the provider.
|
HealthCheck |
HealthCheckCollection.remove(Endpoint endpoint) |
void |
HealthStatusManager.removeAll(Endpoint[] endpoints) |
void |
MultiDbConnectionProvider.setActiveDatabase(Endpoint endpoint) |
void |
HealthStatusManager.unregisterListener(Endpoint endpoint,
HealthStatusListener listener) |
void |
MultiDbConnectionProvider.validateTargetConnection(Endpoint endpoint)
Design decision was made to defer responsibility for cross-replication validation to the user.
|
HealthStatus |
StatusTracker.waitForHealthStatus(Endpoint endpoint)
Waits for a specific endpoint's health status to be determined (not UNKNOWN).
|
| Constructor and Description |
|---|
Config(Endpoint restEndpoint,
java.util.function.Supplier<RedisCredentials> credentialsSupplier) |
DatabaseSwitchEvent(SwitchReason reason,
Endpoint endpoint,
MultiDbConnectionProvider.Database database) |
HealthStatusChangeEvent(Endpoint endpoint,
HealthStatus oldStatus,
HealthStatus newStatus) |
Copyright © 2025. All rights reserved.