예약 업로드 오픈 스케줄러

- 서버 한 대에서만 실행되도록 Redisson을 이용하여 분산락 적용
This commit is contained in:
2024-12-02 19:18:28 +09:00
parent c54105e65b
commit 1649c08356
3 changed files with 36 additions and 1 deletions

View File

@@ -1,5 +1,8 @@
package kr.co.vividnext.sodalive.configs
import org.redisson.Redisson
import org.redisson.api.RedissonClient
import org.redisson.config.Config
import org.springframework.beans.factory.annotation.Value
import org.springframework.cache.annotation.EnableCaching
import org.springframework.context.annotation.Bean
@@ -26,6 +29,16 @@ class RedisConfig(
@Value("\${spring.redis.port}")
private val port: Int
) {
@Bean(destroyMethod = "shutdown")
fun redissonClient(): RedissonClient {
val config = Config()
config.useSingleServer()
.setAddress("redis://$host:$port")
.setConnectionMinimumIdleSize(1)
.setConnectionPoolSize(5)
return Redisson.create(config)
}
@Bean
fun redisConnectionFactory(): RedisConnectionFactory {
val clientConfiguration = LettuceClientConfiguration.builder()