tomcat+ngnix单机搭建集群及端口占用问题
1.将tomcat复制两份,如下:
2.新建环境变量,如下:
3.修改其中一个的配置文件,另一个保持不变,修改server.xml配置文件如下:
<Server port="9005" shutdown="SHUTDOWN"> <Connector port="9080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" /> <Connector port="9009" protocol="AJP/1.3" redirectPort="8443" />
4.修改catalina.bat和startup.bat,如下:
将所有CATALINA_BASE改为CATALINA_2_BASE,将所有CATALINA_HOME改为CATALINA_2_HOME
5.分别start两个tomcat,如果都能正常启动,且都用自己的环境变量,则说明配置成功。
6.修改host文件配置:127.0.0.1 域名
127.0.0.1 tomcat2.mall.com
7.进入ngnix中,针对刚才配置的域名,新建conf配置文件,配置内容如下:
upstream tomcat2.mall.com {
#weight是权重相对比例,也就是刷新tomcat2.mall.com时,负载均衡到的网页的可能比例
server 127.0.0.1:8080 weight=1;#【=两边一定不要加空格】
server 127.0.0.1:9080 weight=1;
#server tomcat2.mall.com:8080;
#server tomcat2.mall.com:9080;
} server {
listen 80;
autoindex on;
server_name tomcat2.mall.com;
access_log E:/software_setup/nginx-1.10.2/nginx-1.10.2/access.log combined;
index index.html index.htm index.jsp index.php;
#error_page 404 /404.html;
if ( $query_string ~* ".*[\;'\<\>].*" ){
return 404;
}
location / {
proxy_pass http://tomcat2.mall.com;
add_header Access-Control-Allow-Origin *;
}
}
8.开启tomcat,开启ngnix,刷新url:tomcat2.mall.com,可以观察变化(可以修改tomcat->root下的tomcat.png的图片,观察变化)。
在idea端开启两个tomcat服务:
1.复制一份源码,并重命名,利用idea打开两个源码,就有两个窗口打开。
2.编辑第二份源码里的tomcat,如图:,修改:
,将其选择在上面已经准备好的tomcat2上。然后修改:
,如果正确选择在tomcat2上,http端口会自动获取到配置好的tomcat2的端口,这里应该是9080,然后修改JMX端口,不然就会与tomcat1发生冲突,这里可以改为2099.。最后修改:
,删除原有的deployment,重新添加一个deployment,注意要选mall:war,不要选mall:war exploded。
3.到此为止,就可以分别启动tomcat1和tomcat2了,但是在最后关闭tomcat时,会出现端口占用问题,也就是有一个tomcat没有真正关闭,会出现这样的图标:,解决办法:在cmd命令行执行:netstat -ano,查看端口占用状态。而只要查看到1099端口的占用状态即可,比如此时是:
,打开任务管理器,查看当前进程:
,发现正在运行,结束当前进程即可。此时图标还原到正常:
。
tomcat+ngnix单机搭建集群及端口占用问题的更多相关文章
- SolrCloud6.3 单机、集群、内置jetty、tomcat搭建、对collection操作
参考:https://my.oschina.net/u/1416405/blog/821187 1.Solr 单机 1.1.Solr下载 1.solr官网:http://lucene.apache.o ...
- Nginx+Tomcat+Memcached负载均衡集群服务搭建
操作系统:CentOS6.5 本文档主要讲解,如何在CentOS6.5下搭建Nginx+Tomcat+Memcached负载均衡集群服务器,Nginx负责负载均衡,Tomcat负责实际服务,Memc ...
- Nginx+Tomcat搭建集群,Spring Session+Redis实现Session共享
小伙伴们好久不见!最近略忙,博客写的有点少,嗯,要加把劲.OK,今天给大家带来一个JavaWeb中常用的架构搭建,即Nginx+Tomcat搭建服务集群,然后通过Spring Session+Redi ...
- 用apache和tomcat搭建集群,实现负载均衡
型的企业应用每天都需要承受巨大的访问量,在着巨大访问量的背后有数台服务器支撑着,如果一台服务器崩溃了,那么其他服务器可以使企业应用继续运行,用户对服务器的运作是透明化的,如何实现这种透明化呢?由如下问 ...
- apache和tomcat搭建集群
最近在学习简单的apache服务器和两个tomcat一起搭建集群,这里简单记录一下 1.准备工作 ①搭建一个可以运行的web项目 用maven搭建springmvc项目 ,只要将这里面的web.xml ...
- Redis 5.0.7 讲解,单机、集群模式搭建
Redis 5.0.7 讲解,单机.集群模式搭建 一.Redis 介绍 不管你是从事 Python.Java.Go.PHP.Ruby等等... Redis都应该是一个比较熟悉的中间件.而大部分经常写业 ...
- Zookeeper集群搭建(多节点,单机伪集群,Docker集群)
Zookeeper介绍 原理简介 ZooKeeper是一个分布式的.开源的分布式应用程序协调服务.它公开了一组简单的原语,分布式应用程序可以在此基础上实现更高级别的同步.配置维护.组和命名服务.它的设 ...
- Nginx + Tomcat搭建集群
一.Tomcat集群带来的好处 1.提高服务的性能,并发能力,以及高可用性 2.提供项目架构的横向扩展能力 二.Tomcat集群实现原理 通过Nginx负载均衡进行请求转发 三.Nginx + Tom ...
- 【运维技术】Zookeeper单机以及集群搭建教程
Zookeeper单机以及集群搭建教程 单机搭建 单机安装以及启动 安装zookeeper的前提是必须有java环境 # 选择目录进行下载安装 cd /app # 下载zk,可以去官方网站下载,自己上 ...
随机推荐
- http2.0可行性研究
一.http2比http1有了更多新特性 1.使用了多路复用的技术,并发量支持比http1大几个数量级: 2.二进制分帧,改善网络延迟情况,提高传输速率: 3.支持header的数据压缩,数据体积变 ...
- HN2018省队集训
HN2018省队集训 Day1 今天的题目来自于雅礼的高二学长\(dy0607\). 压缩包下载 密码: 27n7 流水账 震惊!穿着该校校服竟然在四大名校畅通无阻?霸主地位已定? \(7:10\)从 ...
- linux内核分析 第四周 扒开系统调用的三层皮(上)
一.用户态.内核态和中断处理过程 系统调用是用户通过库函数方式:库函数帮我们把系统调用封装起来. 内核态:高级别执行,可以使用特权指令,访问任意的物理地址. 用户态:低级别执行,代码范围受到限制. C ...
- MyBatis之自查询,使用 递归实现 N级联动
A:首先先看下一个简单的面试题 斐波那契数列 计算数组{1,1,2,3,5,8.......} 第30位值 规律:1 1 从第三项开始,每一项都是前两项之和 有两种实现方式 第一种方式: public ...
- 【learning】中国剩余定理
问题描述 "今有物不知其数,三三数之余二,五五数之余三,七七数之余二.问物几何?" emmm这是..最开始这个问题被提出来的描述 其实说白了就是求解一次同余式组 然后还可以..解决 ...
- C++堆和栈详解(转)
一.预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1.栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等.其 操 ...
- JavaScript的变量预解析特性
JavaScript是解释型语言是毋庸置疑的,但它是不是仅在运行时自上往下一句一句地解析的呢?事实上或某种现象证明并不是这样的,通过<JavaScript权威指南>及网上相关资料了解到,J ...
- Codeforces Round #336 (Div. 2)B 暴力 C dp D 区间dp
B. Hamming Distance Sum time limit per test 2 seconds memory limit per test 256 megabytes input stan ...
- php curl使用ss代理
1.安装 ss,过程略 2.ss 配置文件 { "server":"x.x.x.x", #你的 ss 服务器 ip "server_port" ...
- hihocoder #1584 : Bounce
题意; 有一个n*m的网格阵,球从左上角开始在网格中碰撞,碰到边界就直角反弹,到达格子的角落结束,求途中经过一次的格子数. 代码: //神马规律啊,设x表示球与垂直面的撞击次数,y为球与水平墙面的撞击 ...