一.准备

  1. 两个不同端口号的输出request.getLocalPort() + " ---> " + request.getSession(true).getId()的简单Springboot程序
  2. nginx

二.Springboot中使用spring-session以及redis共享session

2.1.POM配置

 <dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.session</groupId>
<artifactId>spring-session-data-redis</artifactId>
</dependency>
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.9.0</version>
</dependency>
</dependencies>

2.2.application.properties配置

 # Session store type.
spring.session.store-type=redis
# Namespace for keys used to store sessions.
spring.session.redis.namespace=spring:session
# Redis server host.
spring.redis.host=localhost
# Redis server port.
spring.redis.port=6379

2.3.一个简单的REST接口(返回request.getLocalPort()和request.getSession(true).getId())

 @RestController
public class TestSessionShare { @GetMapping("session")
public String getSession(HttpServletRequest request) {
return request.getLocalPort() + " ---> " + request.getSession(true).getId();
} }

2.4.package上面的Springboot程序

2.5.启动两个不同端口号的节点

 java -jar demo.jar --server.port=9988
java -jar demo.jar --server.port=9999

三.Nginx

3.1.配置nginx.conf

 http {

     ......

     upstream sessionShare {
server 127.0.0.1:9988 weight=1;
server 127.0.0.1:9999 weight=1;
} server {
listen 80;
server_name localhost; location / {
proxy_pass http://sessionShare;
}
} ...... }

3.2.启动nginx验证session是否共享

启动nginx,打开浏览器不停刷新http://localhost/session
结果如下:

最新文章

  1. 微信企业号 获取AccessToken
  2. mac电脑http代理服务设置公司内网的相关配置
  3. iOS开发之使用XMPPFramework实现即时通信(二)
  4. Object有哪些公用方法?
  5. 【BZOJ1968】【AHoi2005】COMMON约数研究
  6. 协同过滤 CF &amp; ALS 及在Spark上的实现
  7. 【MySQL】探究之TIMESTAMP
  8. TCP/IP 网络编程 (三)
  9. IsolatedStorageException for Silverlight Application
  10. 20150506—WinForm自动生成按钮&amp;按钮拖动
  11. ORA-15041: diskgroup space exhausted
  12. JqueryTips小实验,浏览器滚动条不限制
  13. java设计模式--创建模式--工厂方法
  14. ArcEngine开发中StartEditing和StartEditOperation的区别
  15. Linux 相关的error处理
  16. 【Unity技巧】四元数(Quaternion)和旋转
  17. linux下64位汇编的系统调用(3)
  18. SearchScore
  19. 洛谷P2251 【质量检测】
  20. yii2 basic版基础部分

热门文章

  1. MySQL_pymysql模块
  2. 解决vue中模态框内数据和外面的数据绑定的问题
  3. Python笔记9-----不等长列表转化成DataFrame
  4. mmap,malloc分配随机内存
  5. struts配置之namespace
  6. structs中通过LabelValueBean构建下拉列表
  7. java-类生命周期(二)
  8. POJ 1236 Network of Schools 强连通图
  9. Apache Pig的前世今生
  10. QTP自带订票实现循环执行,參数化和将异常提示信息输出