Nginx绑定IP,解决session共享
1.Nginx通过负载均衡IP地址固定绑定,解决Session共享
upstream note.java.itcast.cn{
ip_hash;
server localhost:8080 weight=1;
server localhost:8081 weight=1;
}
server {
listen 80;
server_name note.java.itcast.cn;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
proxy_pass http://note.java.itcast.cn;
index index.html index.htm;
}
}
只需要在 upstream添加一个 ip_hash;属性,
相同的请求就会一直请求第一次绑定的这个IP
实现方式
新建一个servlet用于接收请求
@WebServlet("/NginxSessionServlet")
public class NginxSessionServlet extends HttpServlet {
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
System.out.println("当前请求端口:"+req.getLocalPort());
String action=req.getParameter("action");
//向Session中存放一个数据
if(action.equals("setSession")){
req.getSession().setAttribute("username","zhangsan");
}else if(action.equals("getSession")){
resp.getWriter().write((String)req.getSession().getAttribute("username"));
}
}
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doPost(req, resp);
}
实现效果
无论访问多少次,都只会请求8080端口


但是这种方式不推荐使用,因为其他的服务器就一直不会使用,达不到负载均衡的目的
推荐使用Spring-session+Redis的方式实现
https://www.cnblogs.com/chx9832/p/12298760.html
Nginx绑定IP,解决session共享的更多相关文章
- 怎么样 解决nginx负载均衡的session共享问题呢
php服务器有多台,用nginx做负载均衡,这样同一个IP访问同一个页面会被分配到不同的服务器上,如果session不同步的话,就会出现很多问题,比如说最常见的登录状态,下面提供了几种方式来解决ses ...
- 【转载】解决nginx负载均衡的session共享问题
https://blog.csdn.net/u012081441/article/details/71787164 之前有写过ubuntu环境下搭建nginx环境,今天来谈一下nginx sessio ...
- 几个常见用于解决nginx负载均衡的session共享问题的办法
查了一些资料,看了一些别人写的文档,总结如下,实现nginx session的共享: PHP服务器有多台,用nginx做负载均衡,这样同一个IP访问同一个页面会被分配到不同的服务器上,如果sessio ...
- 解决session共享问题
方法一 使用Nginx让它绑定ip(没有共享所以就没有共享问题了) 配置Nginx upstream backserver { ip_hash; server localhost:8080; serv ...
- nginx+tomcat+redis完成session共享
本文记录nginx+redis+tomcat实现session共享的过程 nginx安装:http://blog.csdn.net/grhlove123/article/details/4783467 ...
- nginx+tomcat+redis完成session共享(转载)
转载:http://blog.csdn.net/grhlove123/article/details/48047735 tomcat7下基于redis的session共享所需jar包: http:// ...
- Redis+Tomcat+Nginx集群实现Session共享,Tomcat Session共享
Redis+Tomcat+Nginx集群实现Session共享,Tomcat Session共享 ============================= 蕃薯耀 2017年11月27日 http: ...
- nginx+tpmcat+redis实现session共享
nginx+tpmcat+redis实现session共享 版本:nginx nginx-1.8.0.tar.gztomcat apache-tomcat-7.0.78.tar.gzredis re ...
- Nginx+tomcat+redis实现session共享
Nginx+tomcat+redis实现session共享 1,安装nginx,使用yum -y install nginx 这是epel源中的,需要安装epel源. 2,配置nginx. 在ngin ...
随机推荐
- 全文搜索引擎 Elasticsearch 入门:集群搭建
本文主要介绍什么是 ElasticSearch 以及为什么需要它,如何在本机安装部署 ElasticSearch 实例,同时会演示安装 ElasticSearch 插件,以及如何在本地部署多实例集群, ...
- XPath简介、功能及使用方法
html = '''<html><head><title>The Dormouse's story</title></head><bo ...
- Escape(反思与总结)
题目描述: BH is in a maze,the maze is a matrix,he wants to escape! Input: The input consists of multiple ...
- GPU体系架构(二):GPU存储体系
GPU是一个外围设备,本来是专门作为图形渲染使用的,但是随着其功能的越来越强大,GPU也逐渐成为继CPU之后的又一计算核心.但不同于CPU的架构设计,GPU的架构从一开始就更倾向于图形渲染和大规模数据 ...
- 黑龙江大学图书馆抢座python
2019.11.01 增加成功发送QQ邮件. 2019.10.31更新 晚上测试成功 ========================== 昨晚肝了一晚上,今天已经写出成品并且部署到服务器上了,代码很 ...
- 41.Python中加载静态文件
在一个网页中,不仅仅只有一个html骨架,还需要css样式文件,js执行文件以及一些图片等.因此在DTL中加载静态文件时一个必须要解决的问题.在DTL中,使用static标签来加载静态文件.要使用st ...
- JS 弹出小窗口
弹出窗口函数 function openwindow(url,name,iWidth,iHeight){ var url; //转向网页的地址; var name; //网页名称,可为空; var i ...
- linux--工具参考篇
linux下的好用工具 工具好多!!! gdb调试利器 ldd查看程序依赖库 lsof一切皆文件 ps进程查看器 pstack 跟踪进程栈 strace 跟踪进程中的系统调用 ipcs 查询进程间通信 ...
- VMware与Centos系统安装之重置root密码
VMware与Centos系统安装之重置root密码 今日任务 1.Linux发行版的选择 2.vmware创建一个虚拟机(centos) 3.安装配置centos7 4.xshell配置连接虚拟 ...
- [大数据技术]Kettle初次连接MySQL数据库 报错问题 错误连接数据库 Error occured while trying to connect to the database Exception while loading class org.gjt.mm.mysql.Driver
报错内容如下: 错误连接数据库 [foodmartconn] : org.pentaho.di.core.exception.KettleDatabaseException: Error occure ...