SpringBoot 통합 Redisson 단계(독립 실행형)

3421 단어 SpringBootRedisson

Redisson, Jedis, Lettuce의 장단점 비교


(1)Redisson


장점:
분포식 특성과 확장 가능한 자바 데이터 구조를 실현하여 분포식 개발에 적합하다.
API 스레드 보안;
Netty 프레임워크 기반의 이벤트 구동 통신으로 비동기적으로 호출할 수 있습니다.
단점:
API가 추상적이며 학습 사용 비용이 높습니다.

(2)Jedis


장점:
비교적 포괄적인 Redis 운영 기능을 제공하는 API
API는 Redis의 명령에 기본적으로 대응하며 사용이 간단하고 이해하기 쉽습니다.
단점:
IO 동기화 차단;
비동기식 지원되지 않음;
노선이 안전하지 않다.

(3)Lettuce


장점:
스레드 안전;
Netty 프레임워크 기반 이벤트 구동 통신, 비동기식 호출 가능;
분산 캐시에 적용됩니다.
단점:
API가 추상적이며 학습 사용 비용이 높습니다.
그 중에서 제디스는 가장 보편적인 (확실히 매우 간단하다), 특히 많은 단일 응용이나 위분포식 응용 등을 사용한다.

SpringBoot 통합 Redisson


1. Maven 의존 추가


<!-- redisson-springboot -->
   <dependency>
       <groupId>org.redisson</groupId>
       <artifactId>redisson-spring-boot-starter</artifactId>
       <version>3.11.4</version>
   </dependency>

2. 프로파일


spring:
  redis:
    host: 127.0.0.1
    port: 6379
    database: 0
    timeout: 5000

3. 구성 클래스 추가


import org.redisson.Redisson;
import org.redisson.api.RedissonClient;
import org.redisson.config.Config;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.data.redis.RedisProperties;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;


@Configuration
public class RedissonConfig {

    @Autowired
    private RedisProperties redisProperties;

    @Bean
    public RedissonClient redissonClient() {
        Config config = new Config();
        String redisUrl = String.format("redis://%s:%s", redisProperties.getHost() + "", redisProperties.getPort() + "");
        config.useSingleServer().setAddress(redisUrl).setPassword(redisProperties.getPassword());
        config.useSingleServer().setDatabase(3);
        return Redisson.create(config);
    }

}

4. 코드 테스트(간단한 액세스)


import org.redisson.api.RedissonClient;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequestMapping("/redisson")
public class RedissonController {

    @Autowired
    private StringRedisTemplate stringRedisTemplate;

    @GetMapping("/save")
    public String save(){
        stringRedisTemplate.opsForValue().set("key","redisson");
        return "save ok";
    }

    @GetMapping("/get")
    public String get(){
        return stringRedisTemplate.opsForValue().get("key");
    }

}
다음은 SpringBoot 통합 Redisson의 단계(싱글)에 대한 상세한 내용입니다. SpringBoot 통합 Redisson에 대한 더 많은 자료는 저희의 다른 관련 글을 참고하세요!

좋은 웹페이지 즐겨찾기