Преглед изворни кода

Lettuce 配置。使用 Sentinel 时强制读写都走 Master,避免写请求被路由到只读副本导致 READONLY。

dujian пре 1 месец
родитељ
комит
eb195cf649
1 измењених фајлова са 18 додато и 0 уклоњено
  1. 18 0
      alien-store/src/main/java/shop/alien/store/config/RedisLettuceConfig.java

+ 18 - 0
alien-store/src/main/java/shop/alien/store/config/RedisLettuceConfig.java

@@ -0,0 +1,18 @@
+package shop.alien.store.config;
+
+import io.lettuce.core.ReadFrom;
+import org.springframework.boot.autoconfigure.data.redis.LettuceClientConfigurationBuilderCustomizer;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+
+/**
+ * Lettuce 配置。使用 Sentinel 时强制读写都走 Master,避免写请求被路由到只读副本导致 READONLY。
+ */
+@Configuration
+public class RedisLettuceConfig {
+
+    @Bean
+    public LettuceClientConfigurationBuilderCustomizer lettuceClientConfigurationBuilderCustomizer() {
+        return builder -> builder.readFrom(ReadFrom.MASTER);
+    }
+}