1. 程式人生 > 其它 >Spring Boot 整合Redisson問題

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>