Redis
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> Redis

Khóa hết hạn Spring Data Redis

Tôi đang sử dụng Spring Data Redis.

Tôi đang sử dụng @Redishash(timeToLive=300) chú thích để các Thực thể của tôi hết hạn sau 300 giây.

Đây là đoạn trích từ pom.xml của tôi

...
...
<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.1.7.RELEASE</version>
    <relativePath /> <!-- lookup parent from repository -->
</parent>
...
...
<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-redis</artifactId>
    </dependency>
    <dependency>
        <groupId>redis.clients</groupId>
        <artifactId>jedis</artifactId>
    </dependency>
...
...

RedisConfig.class của tôi

@Configuration
@Log4j2
@EnableRedisRepositories(basePackageClasses = ConsentOTP.class)
public class RedisConfig {

    @Value("${spring.redis.host}")
    private String host;

    @Value("${spring.redis.port}")
    private Integer port;

    @Value("${spring.redis.password}")
    private String password;

    @Bean
    JedisConnectionFactory jedisConnectionFactory() {
        log.info("=================================================================");
        log.info("redis config : {} : {} ", host, port);
        log.info("=================================================================");

        RedisStandaloneConfiguration config = new RedisStandaloneConfiguration(host, port);
        config.setPassword(RedisPassword.of(password));
        return new JedisConnectionFactory(config);
    }

}

Và lớp thực thể của tôi ConsentOtp.class

@RedisHash(value = "ConsentOTP", timeToLive = 300)
@Data
@NoArgsConstructor
public class ConsentOTP implements Serializable {

    private static final long serialVersionUID = 1708925807375596799L;

    private String id;
    private LocalDateTime timestamp;
    private String otp;

    public ConsentOTP(String personId, LocalDateTime timestamp, String otp) {
        this.id = personId;
        this.timestamp = timestamp;
        this.otp = otp;
    }
}

Đây là kho lưu trữ Redis của tôi

public interface ConsentOtpRepository extends CrudRepository<ConsentOTP, String> {
    
}


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Redis / Node.js - 2 client (1 pub / sub) gây ra sự cố ghi

  2. Lỗi trạng thái phiên Azure Redis Hết thời gian chờ thực hiện EVAL, inst:1, queue:2

  3. 2 cách tiếp cận để theo dõi người dùng trực tuyến với Redis. Cái nào nhanh hơn?

  4. Cách sử dụng Redis Hashes

  5. Thử lại tự động