Nginx的session一致性问题

session一致性memcached缓存数据库解决方案

  1、安装memcached内存数据库

yum –y install memcached

可以用telnet localhost 11211

Set abc 0 0 5

12345

get abc

  2、web服务器连接memcached的jar包拷贝到tomcat的lib

  3、修改server.xml里面修改Engine标签,添加jvmRoute属性,目的是查看sessionid里面带有tomcat的名字,就是这里配置的jvmRoute

<Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcat1">

  4、配置tomcat的conf目录下的context.xml

<Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"

memcachedNodes="n1:192.168.17.9:11211"

sticky="false"

lockingMode="auto"

sessionBackupAsync="false"

requestUriIgnorePattern=".*\.(ico|png|gif|jpg|css|js)$"

sessionBackupTimeout="1000" transcoderFactoryClass="de.javakaffee.web.msm.serializer.kryo.KryoTranscoderFactory" />

配置memcachedNodes属性,配置memcached数据库的ip和端口,默认11211,多个的话用空格隔开

目的?让tomcat服务器从memcached缓存里面拿session或者是放session

  5、修改index.jsp,取sessionid看一看

<%@ page language="java" contentType="text/html; charset=UTF-8"  pageEncoding="UTF-8"%>

<html lang="en">

SessionID:<%=session.getId()%>

</br>

SessionIP:<%=request.getServerName()%>

</br>

<h1>tomcat1</h1>

</html>

继续。!

时间: 2024-10-13 23:46:51

Nginx的session一致性问题的相关文章

nginx之 nginx + tomcat + redis 负载均衡且session一致性

说明: 本文描述的是 nginx + tomcat + redis 实现应用负载均衡且满足session一致性,从安装到配置的全部过程,供大家学习!nginx 代理服务器ip: 10.219.24.26tomcat_1 应用服务器ip与端口: 10.219.24.21:8080 tomcat_2 应用服务器ip与端口: 10.219.24.21:8081redis 缓存服务器ip: 10.219.24.23 一. nginx-1.9.7 编译安装 下载地址: http://nginx.org/d

Centos7下Nginx+Tomcat配置反向代理,使用memcached解决session一致性问题

一.session一致性问题 使用集群方案解决网站高并发问题时,就会部署多台应用服务器.当用户第一次通过客户端(如:浏览器)访问服务器时,服务器会创建对应的session, 使用Nginx反向代理,假如用户A第一次访问站点,被反向代理到服务器一处理,服务器一创建对应sessionA记录信息,用户A再次访问站点时,被反向代理到服务二处理, 而服务器二没有记录用户A的session信息,就会新创建sessionB,导致用户A之前操作丢失. 我们可以通过让多个服务器统一到同一个地方新建session和

分布式下Session一致性问题

一.Session一致性问题 1.1 什么是Session 用户使用网站的服务,基本上需要浏览器和web服务器进行多次交互,web服务器如何知道哪些请求是来自哪个会话的? 具体方式为:在会话开始时,分配一个唯一的会话标识(sessionId),通过cookie把这个标识告诉浏览器,以后每次请求的时候,浏览器都会带上这个会话标识来告诉web服务器请求是属于哪个会话的.如果遇到禁用cookie的情况,一般的做法就是把这个会话标识放到url的参数中. 1.2 什么是Session一致性问题 因为会话信

分布式下Session一致性架构举例

一.问题及方案 见这篇文章:分布式下Session一致性问题 二.分布式环境搭建: 系统环境 [[email protected] ~]# cat /etc/redhat-release CentOS Linux release 7.4.1708 (Core) [[email protected] ~]# 2.1 安装jdk # 下载jdk-8u141-linux-x64.tar.gz # 创建目录 mkdir -p /opt/java # 解压 tar -xzvf jdk-8u141-linu

session一致性的解决方案

更多内容,欢迎关注微信公众号:全菜工程师小辉.公众号回复关键词,领取免费学习资料. 什么是session? 服务器为每个用户创建一个会话,存储用户的相关信息,以便多次请求能够定位到同一个上下文,这个相关信息就是session.这样,当用户在应用程序的Web页之间跳转时,存储在session对象中的变量将不会丢失,而是在整个用户会话中一直存在下去. session是对http无状态协议的补充,达到状态保持的目的 什么是session一致性问题? 假设用户包含登录信息的session都记录在第一台s

Terracotta+Tomcat+nginx实现session的共享

环境准备:(Nginx,tomcat的安装部署本例不赘述.) 192.168.1.13     nginx 192.168.1.225    tomcat7,terracotta 192.168.1.226    tomcat7 部署terracotta+tomcat集群: 一:安装java程序至系统,配置java环境. # vi /etc/profile export JAVA_HOME=/usr/local/java export PATH=/usr/local/java/bin:$PATH

Nginx+tomcat session cluster会话保持实验

Nginx+tomcat session cluster会话保持实验 实验要求: 1.nginx+tomcat 负载均衡 2.会话保持 实验拓扑 ip网络规划 Nginxnode2:172.16.76.20 tomcatAnode3:172.16.76.30 tomcatBnode4:172.16.76.40 基础配置 node2: [[email protected]~]# yum install nginx –y    node3:     [[email protected]~]# yum

Nginx 反向代理Apache要保证Apache虚拟机和Nginx虚拟机的一致性

1.nginx相对于apache的优点:  轻量级,同样起web 服务,比apache 占用更少的内存及资源  抗并发,nginx 处理请求是异步非阻塞的,而apache 则是阻塞型的,在高并发下nginx 能保持低资源低消耗高性能 apache 相对于nginx 的优点: rewrite , 比nginx 的rewrite 强大  动态页面 模块超多,基本想到的都可以找到 少bug ,nginx 的bug 相对较多 超稳定 nginx处理静态文件好,耗费内存少 . nginx处理动态请求是鸡肋

tomcat redis nginx 实现session共享

Redis tomcat nginx 实现session共享 redis3.1   tomcat7    nginx 1.8.1 jar包  jedis-2.7.2.jar   tomcat-redis-session-manage-tomcat7.jar  commons-pool2-2.4.2.jar Redis安装在fedora中 一.将redis设置主从服务器http://blog.csdn.net/qq_27966627/article/details/51249774 端口分别为63