简介:
实现reids master slave 模式添加哨兵(sentinel)监控,当主机down掉后备机承担主机身份进行生产工作。
实施:
1.先依照spring redis 整合http://see-you-again.iteye.com/admin/blogs/2323435完成非哨兵监控模式下的配置。
2.修改pom文件如下:
<?xml version="1.0" encoding="UTF-8"?> <!--suppress ALL --> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> <context:property-placeholder location="classpath:redis.properties" /> <bean id="poolConfig" class="redis.clients.jedis.JedisPoolConfig" p:maxIdle="${redis.maxIdle}" p:maxTotal="${redis.maxActive}" p:maxWaitMillis="${redis.maxWait}" p:testOnBorrow="${redis.testOnBorrow}"> </bean> <!-- 不使用哨兵 <bean id="jedisConnFactory" class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory" p:usePool="true" p:hostName="127.0.0.1" p:port="7000" p:timeout="200" p:password="" p:poolConfig-ref="poolConfig"/> --> <bean id="jedisConnFactory" class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory"> <constructor-arg name="sentinelConfig" ref="redisSentinelConfiguration"></constructor-arg> <constructor-arg name="poolConfig" ref="poolConfig"></constructor-arg> </bean> <bean id="redisSentinelConfiguration" class="org.springframework.data.redis.connection.RedisSentinelConfiguration"> <property name="master"> <bean class="org.springframework.data.redis.connection.RedisNode"> <property name="name" value="mymaster"></property> </bean> </property> <property name="sentinels"> <set> <!-- 注意这里配置的是哨兵信息,而非redis服务信息--> <bean class="org.springframework.data.redis.connection.RedisNode"> <constructor-arg index="0" value="127.0.0.1" /> <constructor-arg index="1" value="5001" /> </bean> <bean class="org.springframework.data.redis.connection.RedisNode"> <constructor-arg index="0" value="127.0.0.1" /> <constructor-arg index="1" value="5002" /> </bean> <bean class="org.springframework.data.redis.connection.RedisNode"> <constructor-arg index="0" value="127.0.0.1" /> <constructor-arg index="1" value="5003" /> </bean> </set> </property> </bean> <bean id="redisTemplate" class="org.springframework.data.redis.core.StringRedisTemplate" > <property name="connectionFactory" ref="jedisConnFactory" /> <property name="enableTransactionSupport" value="true" /> </bean> <bean id="userDao" class="com.test.redis.UserDao" > <constructor-arg name="redisTemplate" ref="redisTemplate"/> </bean> <bean id="redisDao" class="com.test.redis.RedisDao" > <constructor-arg name="redisTemplate" ref="redisTemplate"/> </bean> </beans>
相关推荐
本文将深入探讨如何在Spring框架中整合Redis哨兵模式,实现高可用的Redis服务。 首先,我们需要理解Redis哨兵系统的工作原理。哨兵系统是由多个哨兵节点组成的,它们会持续监控主Redis实例和从Redis实例的状态。...
<bean class="org.springframework.data.redis.sentinel.Configuration"> <bean id="redisTemplate" class="org.springframework.data.redis.core.RedisTemplate"> ``` 这里,你需要替换`sentinel_host`...
a) 添加依赖:在SpringBoot的`pom.xml`文件中添加Redis Sentinel的相关依赖,如`spring-boot-starter-data-redis`和`redisson`(一个支持Redis Sentinel的Java客户端)。 b) 配置Redis Sentinel:在`application....
**Spring整合Redis哨兵** 在高可用性系统中,Redis Sentinel是至关重要的组件,它提供了主从监控、故障检测和自动故障转移的功能。Spring作为Java生态中的主流框架,提供了与Redis Sentinel集成的能力,使得我们...
本项目"spring+springmvc+mybatis+redisSentinel"结合了Spring、SpringMVC、MyBatis以及Redis Sentinel,构建了一个高可用的Web应用程序,同时利用了Redis作为缓存系统提升性能。以下将详细讲解这些技术及其整合过程...
完成以上步骤后,你将拥有一个一主两从三哨兵的 Redis Sentinel 集群。接下来,我们将讨论如何整合这个集群到 SpringBoot 应用中。 在 SpringBoot 中整合 Redis Sentinel,你需要以下几步操作: 1. **添加依赖** ...
在实际项目中,根据业务需求选择合适的Redis部署模式,并结合Spring的便利性,可以极大地提升系统的性能和稳定性。通过`spring-redis`压缩包文件,开发者可以获得示例代码和配置,进一步学习和实践Spring与Redis的...
本教程将深入探讨如何在Spring环境中整合Redis,包括使用Spring Redis模板、连接池、哨兵系统以及JSON序列化,并进一步讨论在集群环境中的应用。 首先,Spring Redis模板是Spring Data Redis项目的一部分,它为操作...
哨兵(Sentinel)模式是Redis提供的高可用性解决方案,能够监控、故障检测以及自动故障迁移,确保在主服务器出现问题时,能够自动切换到备份节点,从而保证服务的连续性。 在这个"ssm-redis-哨兵模式"项目中,主要...
本教程将详细介绍如何在Spring Boot项目中整合Redis,涵盖单机版、Redis集群以及Redis Sentinel哨兵模式。 首先,我们要理解Spring Boot与Redis的基本整合。Spring Boot提供了自动配置功能,通过添加`spring-boot-...
Spring Data Redis同样支持Redis Sentinel和Redis Cluster,以实现高可用性和数据分片。通过配置`RedisSentinelConfigurtion`或`RedisClusterConfiguration`,可以轻松连接到哨兵集群或Redis集群。 ### 结论 ...
在使用Redis Sentinel时,我们需要自定义`RedisTemplate`,设置Sentinel的配置,以便正确连接到哨兵系统。这通常涉及到以下步骤: 1. **创建RedisSentinelConfig**: 这个配置类将包含Sentinel的主机和端口信息,...
哨兵(Sentinel)系统则是Redis为了提升集群稳定性而设计的一个监控和服务发现组件。 首先,我们需要在SpringBoot项目中添加Redis和Spring Data Redis的依赖。在`pom.xml`文件中,添加以下Maven依赖: ```xml ...
SpringBoot 结合 Redis 哨兵模式的实现示例 SpringBoot 结合 Redis 哨兵模式的实现示例主要介绍了如何使用 SpringBoot 框架结合 Redis 哨兵模式实现高可用缓存系统。在本示例中,我们将详细介绍如何使用 ...
本文将深入探讨如何在 Spring Boot 应用中整合 Redis,包括单机、集群和哨兵三种模式。 **单机版Redis整合** 1. **添加依赖**: 在 `pom.xml` 文件中,添加 Spring Boot 对 Redis 的支持,通常会引入 `spring-boot-...
redis整合springmybatis--缓存方案上一篇总结了redissentinel哨兵方案的配置流程本篇就redis整合ssm框架进行说明。目前大多数公司用redis主要做缓存用对于那些不常变
- **启动哨兵**:每个哨兵实例都需要单独启动,使用`/usr/local/redis/bin/redis-server /usr/local/redis/sentinel.conf`。 - **推荐配置**:至少配置3个哨兵以确保系统的高可用性和容错能力。 #### 六、Java 操作...
总结以上步骤,完成Redis主从配置与高可用哨兵模式的搭建,再整合Spring Cache,可以使应用程序在保证性能的同时具备高可用性。需要注意的是,所有的配置操作都需要在保证安全的前提下进行,避免生产环境下的操作...
本文将详细介绍如何在SpringBoot项目中整合单机版Redis、redis-cluster集群以及redis-sentinel哨兵模式。 首先,让我们从最基础的单机版Redis整合开始。要在SpringBoot中配置单机版Redis,你需要在`pom.xml`文件中...