Spring Boot 集成Redisson问题-编程思维

Spring Boot 集成Redisson问题

  1. yml配置错误

    Caused by: com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field "pingTimeout" (class org.redisson.config.SingleServerConfig), not marked as ignorable (25 known properties: "timeout", "subscriptionsPerConnection", "keepAlive", "sslKeystorePassword", "retryInterval", "retryAttempts", "idleConnectionTimeout", "sslTruststorePassword", "sslEnableEndpointIdentification", "address", "sslTruststore", "username", "connectTimeout", "subscriptionConnectionPoolSize", "password", "sslProvider", "tcpNoDelay", "connectionMinimumIdleSize", "subscriptionConnectionMinimumIdleSize", "sslKeystore", "pingConnectionInterval", "clientName", "connectionPoolSize", "database", "dnsMonitoringInterval"])
     at [Source: (StringReader); line: 3, column: 20] (through reference chain: org.redisson.config.Config["singleServerConfig"]->org.redisson.config.SingleServerConfig["pingTimeout"])
    
    • 原因 :

      • 官方Github的文档中 , 中文语言的Wiki文档,在单节点模式配置很明显就问题,一看源码才发现SingleServerConfig和org.redisson.config.Config根本就没有中文Wiki文档Yaml文件的一些配置。然后我又看了英文文档的,发现两个文档的配置有出入。果断英文文档的配置是可以使用的
    • 解决 :

      singleServerConfig:
        idleConnectionTimeout: 10000
        connectTimeout: 10000
        timeout: 3000
        retryAttempts: 3
        retryInterval: 1500
        # 如果Redis服务端配置有密码需要替换password的值
        password: null
        subscriptionsPerConnection: 5
        clientName: null
        # 替换为自己真实Redis服务端连接
        address: "redis://127.0.0.1:6379"
        subscriptionConnectionMinimumIdleSize: 1
        subscriptionConnectionPoolSize: 50
        connectionMinimumIdleSize: 24
        connectionPoolSize: 64
        database: 0
        dnsMonitoringInterval: 5000
      threads: 16
      nettyThreads: 32
      codec: !<org.redisson.codec.FstCodec> {}
      transportMode: "NIO"
      
  2. ClassNotFoundException

    Failed to instantiate [org.redisson.api.RedissonClient]: Factory method 'redissonClient' threw exception; nested exception is java.lang.NoClassDefFoundError: Lorg/nustaq/serialization/FSTConfiguration;
    
    • 导入对应类依赖即可

      • org.nustaq.serialization.FSTConfiguration

        <dependency>
          <groupId>de.ruedigermoeller</groupId>
          <artifactId>fst</artifactId>
          <version>2.04</version>
        </dependency>
        

版权声明:本文版权归作者所有,遵循 CC 4.0 BY-SA 许可协议, 转载请注明原文链接
https://www.cnblogs.com/jancy2265/p/15588694.html

缓存一致性-编程思维

缓存数据的一致性 读所有的数据,首先去缓存中获取,缓存中没有就去读数据库,最后在缓存中放一份。如果该数据在数据库中发生改变,那么缓存里面的数据如何和数据库保持一致?解决这个问题,目前有两个用的非常多的场景: 双写模式 失效模式 双写模式 修改数据库的数据后再修改缓存中的数据 但又引出了一个问题,那就是当有并发时,线程

Redis 缓存过期删除/淘汰策略分析-编程思维

Redis 缓存过期删除/淘汰策略分析 Redis 缓存删除 Redis 键过期删除,定期删除(主动)和惰性删除(被动) Redis 内存不足时,缓存淘汰策略 key 键过期删除 我们用 redis 作为缓存数据库,设置 k-v 数据的时候,可以给这条数据设置一个过期时间。比如,set 命令设置过期时间: set te

本地缓存google.guava及分布式缓存redis 随笔-编程思维

        近期项目用到了缓存,我选用的是主流的google.guava作本地缓存,redis作分布式 缓存,先说说我对本地缓存和分布式缓存的理解吧,可能不太成熟的地方,大家指出,一起 学习.本地缓存的特点是速度快,不会受到网络阻塞的干扰,但由于是放在本地内存中,所 以容量较小,不能项目间共享比IO效率高比redi

redis 流水线-编程思维

Redis提供的流水线特性:这个特性允许客户端把任意多条Redis命令请求打包在一起,然后一次性地将它们全部发送给服务器,而服务器则会在流水线包含的所有命令请求都处理完毕之后,一次性地将它们的执行结果全部返回给客户端。 通过使用流水线特性,我们可以将执行多个命令所需的网络通信次数从原来的N次降低为1次,这可以大幅度地减

Spring Boot 整合 Fisco Bcos(区块链)-编程思维

简介 FISCO BCOS是由国内企业主导研发、对外开源、安全可控的企业级金融联盟链底层平台,由金链盟开源工作组协作打造,并于2017年正式对外开源。 目前,成熟的区块链的平台不少,之所以选择FISCO BCOS,主要是因为文档细致,容易入门。 官方地址入口 流程说明: 本篇文章介绍的 Spring Boot 整合 F

Spring Security极简入门三部曲(上篇)-编程思维

目录Spring Security极简入门三部曲(上篇)写在前面为什么要用Spring Security数据库设计demo时刻核心代码讲解小结 Spring Security极简入门三部曲(上篇) 大家好,这里是白泽。最近学校里一个Spring Boot项目要用到Spring Security做安全相关的工作,好,没用

Spring Boot注解之@Async和自定义线程池-编程思维

前言   我们在学习线程池的时候,都知道线程池的核心线程数、最大线程数、线程工厂等核心参数非常重要,故熟记于心。但是有些工作五六年的攻城狮可能说不出来怎么初始化一个全局线程池,以在不同场景使用;所以,本文基于Spring Boot的异步注解@Async自定义全局线程池。如果是这方面的老铁,请绕道而行,这里都是雕虫小技。