义齿


mvn依存

        
            org.springframework.boot
            spring-boot-starter-redis
        
        
            org.springframework.session
            spring-session-data-redis
        

zulモジュールの設定

@SpringBootApplication
@EnableZuulProxy//  zuul  ,  session                  ,        session。
@EnableEurekaClient
@EnableRedisHttpSession(redisFlushMode = RedisFlushMode.IMMEDIATE)
public class WebApplication {

    public static void main(String[] args) {
        SpringApplication.run(WebApplication.class,args);
    }
}
zuul:
  routes:
    service0:
    #        。 Cookie/Set-Cookie
      sensitiveHeaders: Authorization
      path: /api/**
      url: http://localhost:8080/
    service1:
      path: /api2/**
      url: http://localhost:8090/
      sensitiveHeaders: Authorization
  #     header,  session  

1,@EnableZuulProxy注記は,zulエージェントを導入し,zulのルーティング転送機能を実現するために用いられる.
2,@EnableRedisHttpSession,redis管理セッションを指定します.ここではredisFlushModeを即時リフレッシュモードとして指定し,redisリフレッシュが遅いためsession情報が取得できないことを防止する.
注意sensitiveHeaderを構成するには、デフォルトではsensitiveHeadersにCookie/set-Cookie/Authorizationの3つのヘッダが含まれています.zulはこれらのヘッダが敏感で、デフォルトではルーティングで携帯されないと考えています.そのため、session共有のためには、必ずクッキーを放し、Authorizationだけを設定するか、他の値を指定する必要があります.

その他のモジュール


spring bootのプライマリクラスでredis管理セッションの注釈を開きます.@EnableRedisHttpSession

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.cloud.netflix.zuul.EnableZuulProxy;
import org.springframework.session.data.redis.config.annotation.web.http.EnableRedisHttpSession;
 
@SpringBootApplication
@EnableDiscoveryClient
@EnableZuulProxy
@EnableRedisHttpSession
public class ZuulgatewayApplication {
 
	public static void main(String[] args) {
		SpringApplication.run(ZuulgatewayApplication.class, args);
	}
 
}
 


redisの設定

#  -    
  redis:
    cluster:
      nodes: 10.200.15.248:6379
      timeout: 2000;
      max-redirects: 7
#  -    
  redis:
    host: 10.200.15.248
    port: 6379
    database: 0
    jedis:
      pool:
        max-active: 8
        max-wait:
        max-idle: 8
        min-idle: 0
    timeout:
    password: