Java源码示例:org.springframework.data.redis.connection.RedisSentinelConnection
示例1
/**
* redis 得到所有的master and slave 信息
*/
@Test
public void testGetAllMasterAndSlave() {
RedisSentinelConnection conn = stringRedisTemplate.getConnectionFactory().getSentinelConnection();
for (RedisServer master : conn.masters()) {
System.out.println("master => " + master);// 打印master信息
Collection<RedisServer> slaves = conn.slaves(master);
// 打印该master下的所有slave信息
for (RedisServer slave : slaves) {
System.out.println("slaves of " + master + " => " + slave);
}
System.out.println("--------------");
}
}
示例2
@Override
public RedisSentinelConnection getSentinelConnection() {
if (!redisson.getConfig().isSentinelConfig()) {
throw new InvalidDataAccessResourceUsageException("Redisson is not in Sentinel mode");
}
SentinelConnectionManager manager = ((SentinelConnectionManager)((Redisson)redisson).getConnectionManager());
for (RedisClient client : manager.getSentinels()) {
org.redisson.client.RedisConnection connection = client.connect();
try {
String res = connection.sync(RedisCommands.PING);
if ("pong".equalsIgnoreCase(res)) {
return new RedissonSentinelConnection(connection);
}
} catch (Exception e) {
log.warn("Can't connect to " + client, e);
connection.closeAsync();
}
}
throw new InvalidDataAccessResourceUsageException("Sentinels are not found");
}
示例3
@Override
public RedisSentinelConnection getSentinelConnection() {
if (!redisson.getConfig().isSentinelConfig()) {
throw new InvalidDataAccessResourceUsageException("Redisson is not in Sentinel mode");
}
SentinelConnectionManager manager = ((SentinelConnectionManager)((Redisson)redisson).getConnectionManager());
for (RedisClient client : manager.getSentinels()) {
org.redisson.client.RedisConnection connection = client.connect();
try {
String res = connection.sync(RedisCommands.PING);
if ("pong".equalsIgnoreCase(res)) {
return new RedissonSentinelConnection(connection);
}
} catch (Exception e) {
log.warn("Can't connect to " + client, e);
connection.closeAsync();
}
}
throw new InvalidDataAccessResourceUsageException("Sentinels are not found");
}
示例4
@Override
public RedisSentinelConnection getSentinelConnection() {
if (!redisson.getConfig().isSentinelConfig()) {
throw new InvalidDataAccessResourceUsageException("Redisson is not in Sentinel mode");
}
SentinelConnectionManager manager = ((SentinelConnectionManager)((Redisson)redisson).getConnectionManager());
for (RedisClient client : manager.getSentinels()) {
org.redisson.client.RedisConnection connection = client.connect();
try {
String res = connection.sync(RedisCommands.PING);
if ("pong".equalsIgnoreCase(res)) {
return new RedissonSentinelConnection(connection);
}
} catch (Exception e) {
log.warn("Can't connect to " + client, e);
connection.closeAsync();
}
}
throw new InvalidDataAccessResourceUsageException("Sentinels are not found");
}
示例5
@Override
public RedisSentinelConnection getSentinelConnection() {
if (!redisson.getConfig().isSentinelConfig()) {
throw new InvalidDataAccessResourceUsageException("Redisson is not in Sentinel mode");
}
SentinelConnectionManager manager = ((SentinelConnectionManager)((Redisson)redisson).getConnectionManager());
for (RedisClient client : manager.getSentinels()) {
org.redisson.client.RedisConnection connection = client.connect();
try {
String res = connection.sync(RedisCommands.PING);
if ("pong".equalsIgnoreCase(res)) {
return new RedissonSentinelConnection(connection);
}
} catch (Exception e) {
log.warn("Can't connect to " + client, e);
connection.closeAsync();
}
}
throw new InvalidDataAccessResourceUsageException("Sentinels are not found");
}
示例6
@Override
public RedisSentinelConnection getSentinelConnection() {
if (!redisson.getConfig().isSentinelConfig()) {
throw new InvalidDataAccessResourceUsageException("Redisson is not in Sentinel mode");
}
SentinelConnectionManager manager = ((SentinelConnectionManager)((Redisson)redisson).getConnectionManager());
for (RedisClient client : manager.getSentinels()) {
org.redisson.client.RedisConnection connection = client.connect();
try {
String res = connection.sync(RedisCommands.PING);
if ("pong".equalsIgnoreCase(res)) {
return new RedissonSentinelConnection(connection);
}
} catch (Exception e) {
log.warn("Can't connect to " + client, e);
connection.closeAsync();
}
}
throw new InvalidDataAccessResourceUsageException("Sentinels are not found");
}
示例7
@Override
public RedisSentinelConnection getSentinelConnection() {
System.out.println("getSentinelConnection");
return redisConnectionFactory.getSentinelConnection();
}
示例8
public TracingRedisSentinelConnection(RedisSentinelConnection redisSentinelConnection,
TracingConfiguration configuration) {
this.redisSentinelConnection = redisSentinelConnection;
this.helper = new TracingHelper(configuration);
}
示例9
@Override
public RedisSentinelConnection getSentinelConnection() {
return new TracingRedisSentinelConnection(connection.getSentinelConnection(),
tracingConfiguration);
}
示例10
@Override
public RedisSentinelConnection getSentinelConnection() {
return new TracingRedisSentinelConnection(delegate.getSentinelConnection(),
tracingConfiguration);
}
示例11
@Test
public void delegatesCallToGetSentinelConnection() {
RedisSentinelConnection connection = connectionFactory.getSentinelConnection();
verify(delegate).getSentinelConnection();
assertTrue(connection instanceof TracingRedisSentinelConnection);
}
示例12
public TracingRedisSentinelConnection(RedisSentinelConnection redisSentinelConnection,
TracingConfiguration configuration) {
this.redisSentinelConnection = redisSentinelConnection;
this.helper = new TracingHelper(configuration);
}
示例13
@Override
public RedisSentinelConnection getSentinelConnection() {
return new TracingRedisSentinelConnection(connection.getSentinelConnection(),
tracingConfiguration);
}
示例14
@Override
public RedisSentinelConnection getSentinelConnection() {
return new TracingRedisSentinelConnection(delegate.getSentinelConnection(),
tracingConfiguration);
}
示例15
@Test
public void delegatesCallToGetSentinelConnection() {
RedisSentinelConnection connection = connectionFactory.getSentinelConnection();
verify(delegate).getSentinelConnection();
assertTrue(connection instanceof TracingRedisSentinelConnection);
}