Dalam aplikasi web berskala besar, pengurusan sesi adalah sangat penting, yang tidak boleh dipenuhi oleh storan mesin tunggal.
Biasanya yang berikut adalah Satu kaedah:
Teruskan sesi ke dalam pangkalan data Tetapi kelemahannya ialah kos membaca dan menulis terlalu tinggi.
<!--基于redis的分布式session存储--> <dependency> <groupId>org.springframework.session</groupId> <artifactId>spring-session-data-redis</artifactId> </dependency>
###### Redis config start ###### spring.redis.database=0 spring.redis.host=192.168.41.60 spring.redis.port=6379 spring.redis.password= spring.redis.pool.max-active=20 spring.redis.pool.max-wait=-1 spring.redis.pool.max-idle=8 spring.redis.pool.min-idle=0 spring.redis.timeout=0 ###### Redis config end ######
@Configuration @EnableRedisHttpSession(redisNamespace = "mysession",maxInactiveIntervalInSeconds = 60*60*24) public class SessionConfig
Kod sumber anotasi @EnableRedisHttpSession adalah seperti berikut parameter boleh dikonfigurasikan:
mempunyai dua cara:
SERTA MERTA: Setelah sesi dibuat Hanya simpan dengan segera ON_SAVE: Ia tidak akan disimpan semasa membuat sesi, tetapi ia akan disimpan apabila menambah data pada. sesi.
@Retention(java.lang.annotation.RetentionPolicy.RUNTIME) @Target({ java.lang.annotation.ElementType.TYPE }) @Documented @Import(RedisHttpSessionConfiguration.class) @Configuration public @interface EnableRedisHttpSession int maxInactiveIntervalInSeconds() default 1800; String redisNamespace() default ""; RedisFlushMode redisFlushMode() default
@RestController public class HelloController @RequestMapping("/hello/{username}") public String hello(HttpSession session, @PathVariable(value = "username") String username) { session.setAttribute("username", username); return "保存session到Redis成功"; } @RequestMapping("/getName") public String getUsername(HttpSession session) { String username = (String) session.getAttribute("username"); return
Atas ialah kandungan terperinci Cara menggunakan but Spring untuk membina cache sesi teragih dengan cepat berdasarkan Redis. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!