springboot项目部署需要redis集群问题

本来直接将redis为单独启动模式转为配置

yml文件

spring.redis.cluster.nodes: 192.168.12.78:8001,192.168.12.78:8002,192.168.12.78:8003,

java文件

package io.sirc.config;

import com.fasterxml.jackson.annotation.JsonAutoDetect;
import com.fasterxml.jackson.annotation.JsonTypeInfo;
import com.fasterxml.jackson.annotation.PropertyAccessor;
import com.fasterxml.jackson.databind.ObjectMapper;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.redis.connection.RedisConnectionFactory;
import org.springframework.data.redis.core.*;
import org.springframework.data.redis.serializer.Jackson2JsonRedisSerializer;
import org.springframework.data.redis.serializer.StringRedisSerializer;

/**
 * @ClassName RedisConfig
 * @Description TODO
 * @Author n
 * @Version 1.0
 */
@Configuration
public class RedisConfigCluster {

    @Bean
    public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory connectionFactory) {
        RedisTemplate<String, Object> redisTemplate = new RedisTemplate<>();
        redisTemplate.setConnectionFactory(connectionFactory);
        Jackson2JsonRedisSerializer serializer = new Jackson2JsonRedisSerializer(Object.class);
        ObjectMapper mapper = new ObjectMapper();
        mapper.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
        mapper.enableDefaultTyping((ObjectMapper.DefaultTyping.NON_FINAL));
        serializer.setObjectMapper(mapper);

        //如果不序列化在key value 使用redis客户端工具 直连redis服务器 查看数据时 前面会有一个 \xac\xed\x00\x05t\x00\x05 字符串
        // StringRedisSerializer 来序列化和反序列化 String 类型 redis 的 key value
        redisTemplate.setKeySerializer(new StringRedisSerializer());
        redisTemplate.setValueSerializer(serializer);
        // StringRedisSerializer 来序列化和反序列化 hash 类型 redis 的 key value
        redisTemplate.setHashKeySerializer(new StringRedisSerializer());
        redisTemplate.setHashValueSerializer(serializer);

        redisTemplate.afterPropertiesSet();
        return redisTemplate;
    }

        /**
     * 对hash类型的数据操作
     *
     * @param redisTemplate
     * @return
     */
    @Bean
    public HashOperations<String, String, Object> hashOperations(RedisTemplate<String, Object> redisTemplate) {
        return redisTemplate.opsForHash();
    }

    /**
     * 对redis字符串类型数据操作
     *
     * @param redisTemplate
     * @return
     */
    @Bean
    public ValueOperations<String, String> valueOperations(RedisTemplate<String, String> redisTemplate) {
        return redisTemplate.opsForValue();
    }

    /**
     * 对链表类型的数据操作
     *
     * @param redisTemplate
     * @return
     */
    @Bean
    public ListOperations<String, Object> listOperations(RedisTemplate<String, Object> redisTemplate) {
        return redisTemplate.opsForList();
    }

    /**
     * 对无序集合类型的数据操作
     *
     * @param redisTemplate
     * @return
     */
    @Bean
    public SetOperations<String, Object> setOperations(RedisTemplate<String, Object> redisTemplate) {
        return redisTemplate.opsForSet();
    }


    /**
     * 对有序集合类型的数据操作
     *
     * @param redisTemplate
     * @return
     */
    @Bean
    public ZSetOperations<String, Object> zSetOperations(RedisTemplate<String, Object> redisTemplate) {
        return redisTemplate.opsForZSet();
    }
}

windows redis打开集群模式

1.修改配置文件 redis.windows.conf

cluster-enabled yes
port 6379
appendonly yes

复制几个redis分别启动,我这边启动成功了 但是集群失败了,有知道的可以教一下我

redis-cli --cluster create --cluster-replicas 1 127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005 127.0.0.1:7006

后面用了运维搭建的集群发现是springboot版本问题将版本从

<version>2.1.3.RELEASE</version>改为
<version>2.7.18</version>j解决一堆循环依赖,还有cros跨域配置问题即可

相关推荐

  1. ClickHouse 部署(不需要 Zookeeper)

    2024-06-06 12:10:02       14 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-06-06 12:10:02       19 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-06 12:10:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-06 12:10:02       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-06 12:10:02       20 阅读

热门阅读

  1. 使用packstack快速部署OpenStack

    2024-06-06 12:10:02       8 阅读
  2. 动态规划:打家劫舍 II

    2024-06-06 12:10:02       10 阅读
  3. 前端 、Python 扁平化嵌套数组和应用场景

    2024-06-06 12:10:02       9 阅读
  4. 如何搭建开发一款看广告赚钱软件?

    2024-06-06 12:10:02       10 阅读
  5. spring整合kafka

    2024-06-06 12:10:02       6 阅读
  6. go语言接口之接口类型

    2024-06-06 12:10:02       9 阅读
  7. 爬山算法的详细介绍

    2024-06-06 12:10:02       9 阅读
  8. spring 事务失效的几种场景

    2024-06-06 12:10:02       8 阅读
  9. C#的线程锁

    2024-06-06 12:10:02       8 阅读