160512、nginx+多个tomcat集群+session共享(windows版)
第一步:下载nginx的windows版本,解压即可使用,点击nginx.exe启动nginx
或cmd命令
1、启动:
D:\nginx+tomcat\nginx-1.9.3>start nginx或D:\nginx+tomcat\nginx-1.9.3>nginx.exe注:建议使用第一种,第二种会使你的cmd窗口一直处于执行中,不能进行其他命令操作。
2、停止:
D:\nginx+tomcat\nginx-1.9.3>nginx.exe -s stop或D:\nginx+tomcat\nginx-1.9.3>nginx.exe -s quit注:stop是快速停止nginx,可能并不保存相关信息;quit是完整有序的停止nginx,并保存相关信息。
3、重新载入Nginx:
D:\nginx+tomcat\nginx-1.9.3>nginx.exe -s reload
当配置信息修改,需要重新载入这些配置时使用此命令。
4、重新打开日志文件:
D:\nginx+tomcat\nginx-1.9.3>nginx.exe -s reopen
5、查看Nginx版本:
D:\nginx+tomcat\nginx-1.9.3>nginx -v
nginx默认端口是80直接访问localhost如果显示nginx欢迎页则表明成功,这一步一般不会出现问题
第三步:配置几个tomcat,每个里面分别将server.xml中8080,8005,8009这几个地方修改掉就可以了
第三步:修改nginx.conf(注意添加红色部分就可以了)
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
upstream server_lb{#server_lb跟下面的一样
server localhost:8090;#这里是tomcat的地址
server localhost:8091;
}
server {
listen 80;
server_name localhost;
location / {
root html;
proxy_pass http://server_lb;
index index.html index.htm index.jspf index.jsp;
proxy_redirect default;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
第四步:修改每个tomcat中的server.xml配置文件文件
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster" jvmRoute="jvmRoute"/>
注,但是此时由于每个tomcat部署同一套工程,如果有数据 直接写往session,而且不是使用的cookie存放session的key(由于访问地址使用ip,并不适用域名,所以没法使用cookie),会 造成两次访问session id不一致。此时就需要做session复制或共享。需要以下操作:
第五步:session共享,因为windows中支持tomcat的广播机制,所以只需在web.xm中添加<distributable/>就可以了;如果再linux中需要实现session共享就不能通过这种方式,linux中可以通过redis,后期将会介绍
通过以上步骤就实现了再windows中nginx集群tomcat,并实现了session共享。如果需要视频的朋友,可以在往期的文章中寻找
160512、nginx+多个tomcat集群+session共享(windows版)的更多相关文章
- Nginx+Tomcat集群+session共享
Nginx+Tomcat集群+session共享 1)安装Nginx 2)配置多个Tomcat,在server.xml中修改端口(端口不出现冲突即可) 3)在nginx.conf文件中配置负载均衡池, ...
- Shiro+Redis实现tomcat集群session共享
一.背景 当我们使用了nginx做项目集群以后,就会出现一个很严重的问题亟待解决,那就是:tomcat集群之间如何实现session共享的问题,如果这个问题不解决,就会出现登陆过后再次请求资源依旧 ...
- 160513、nginx+tomcat集群+session共享(linux)
第一步:linux中多个tomcat安装和jdk安装(略) 第二步:nginx安装,linux中安装nginx和windows上有点不同也容易出错,需要编译,这里做介绍 一.安装依赖 gcc open ...
- JEECG & JEESite Tomcat集群 Session共享
多台tomcat服务的session共享 memcached与redis - JEECG开源社区 - CSDN博客https://blog.csdn.net/zhangdaiscott/article ...
- tomcat集群session共享
Tomcat集群配置其实很简单,在Tomcat自带的文档中有详细的说明( /docs/cluster-howto.html ),只不过是英语的,对我这样的人来说很难懂 . 下面根据说下怎么配置 ...
- redis实现tomcat集群session共享
1.部署两个tomcat节点,使用nginx实现集群(见http://www.cnblogs.com/zhangzhi0556/articles/nginx.html): 2.redis安装(见h ...
- 基于Memcached的tomcat集群session共享所用的jar
多个tomcat各种序列化策略配置如下:一.java默认序列化tomcat配置conf/context.xml添加<Manager className="de.javakaffee.w ...
- 基于Memcached的tomcat集群session共享所用的jar及多个tomcat各种序列化策略配置
原文:http://www.cnblogs.com/interdrp/p/4096466.html 多个tomcat各种序列化策略配置如下:一.java默认序列化tomcat配置conf/contex ...
- 使用memcached实现tomcat集群session共享
环境centos6.7,下载安装必要的软件:yum -y install epel-release(tomcat7在此源上,tomcat7是现在主流版本) yum -y install tomcat ...
随机推荐
- ajax创建
ajax对象创建和使用 //创建ajax对象 function createXMLhttp(){ var xmlhttp; if(window.XMLHttpRequest) {// code for ...
- Python中模拟C# Linq的一些操作
闲来无事时积累的一些Linq函数,有时间就更新. 需要注意python版本如果低于3.0不支持lambda,只能单独写函数传参,比较麻烦 1.FirstOrDefault: def FirstOrDe ...
- Java中path,-classpath,-Djava.library.path的功能和区别
1. path path是个系统环境变量,声明命令的搜索路径,让操作系统找到指定的工具程序. D:\Program Files\Java\jdk1.8.0_111\bin指定JDK工具路径,例如jav ...
- Xilinx问题查找
1.登录https://www.xilinx.com/ 2.在All下拉菜单选择Support选项查找技术问题,All选项会查找全部关键词,但是大多数我们只需要技术相关的内容
- java中==和equals和hashcode的区别详解
一.相同点 都是用来进行值或对象的比较. 二.不同点 对于“==”而言,对于基本类型(char,byte,short,int,long,float,double,boolean),对比的是值,所以是相 ...
- maven 引入 net sf jsonlib 报错 has borken path
pom.xml 内容: <dependency> <groupId>net.sf.json-lib</groupId> <artifactId>json ...
- 文件操作之格式化IO
其实在我使用最多的文件操作中,还是喜欢格式化IO控制的方式,简单方便易理解. #include <stdio.h> #include<stdlib.h> int main() ...
- linux 密码破解
(一)Linux 系统密码破解 1.在grub选项菜单按E进入编辑模式 2.编辑kernel那行 /init 1 (或/single) 3.按B重启 4.进入后执行下列命令 root@#passwd ...
- Ubuntu 12.04下LAMP环境的搭建
首先 apt-get install update 一下 sudo apt-get install update 安装MySQL 的服务端和客户端 sudo apt-get install mysql ...
- Hbase基础篇
namespace:命名空间的作用是把多个属于相同业务领域的表分成一个组.一个表可以自由选择是否有命名空间,如果创建表的时候加上了命名空间后,这个表名字就成为了:<NameSpace> : ...