Nginx在windows上的配置
发布日期:2021-06-29 15:42:16 浏览次数:3 分类:技术文章

本文共 2473 字,大约阅读时间需要 8 分钟。

1.1.1 Nginx目的:

能够使用Nginx搭建Tomcat集群,并完成负载均衡.

1.1.2 Nginx的概述:

什么是Nginx:

 

为什么使用Nginx:

背景:

互联网飞速发展的今天,大用户量高并发已经成为互联网的主体.怎样能让一个网站能够承载几万个或几十万个用户的持续访问呢?这是一些中小网站急需解决的问题。用单机tomcat搭建的网站,在比较理想的状态下能够承受的并发访问量在150200左右。按照并发访问量占总用户数量的5%10%这样计算,单点tomcat网站的用户人数在15004000左右。对于一个为全国范围提供服务的网站显然是不够用的,为了解决这个问题引入了负载均衡方法。负载均衡就是一个web服务器解决不了的问题可以通过多个web服务器来平均分担压力来解决,并发过来的请求被平均分配到多个后台web服务器来处理,这样压力就被分解开来。

负载均衡服务器分为两种一种是通过硬件实现的负载均衡服务器,简称硬负载例如:f5。另一种是通过软件来实现的负载均衡,简称软负载:例如apachenginx。硬负载和软负载相比前者作用的网络层次比较多可以作用到socket接口的数据链路层对发出的请求进行分组转发但是价格成本比较贵,而软负载作用的层次在http协议层之上可以对http请求进行分组转发并且因为是开源的所以几乎是0成本,并且阿里巴巴,京东等电商网站使用的都是Nginx服务器。

1.1.3 使用Nginx完成负载均衡:

完成Nginx负载均衡,那么需要先来介绍Tomcat的安装和配置,我们首先要来配置Tomcat完成集群的配置.因为我们没有多台服务器运行Tomcat.那么我们可以模拟在一台服务器上运行多个Tomcat程序.

使用Tomcat配置Tomcat集群:

步骤一:下载Tomcat:

 

步骤二:安装和配置Tomcat:

直接将下载后的Tomcat解压在本地磁盘:解压两个分别命名为tomcat1tomcat2.

 

配置tomcat环境变量:

        

 

分别完成如下配置:(需要将tomcat带有端口号的地方改成不同的端口即可.)分别打开两个tomcatconf下的server.xml

tomcat1/conf/server.xml

 

 

 

 

tomcat2/conf/server.xml

 

 

 

 

 

1.1.4 Nginx的安装和部署:

Nginx的安装:

nginx-1.8.0.zip解压包某个盘符下运行:目录结构如下:

 

双击nginx.exe即可运行:打开浏览器http://localhost:80显示如下页面:

 

说明安装成功!!!

关闭nginx需要使用:

相当于找到nginx进程kill

nginx -s stop

重新加载配置文件:

nginx -s reload

可以不关闭nginx的情况下更新配置文件.

 

Nginx的负载均衡的配置:

打开C:\nginx-1.8.0\conf\nginx.conf这个文件:

 

 

修改:C:\Windows\System32\drivers\etc\hosts文件:

***** 通过以上的配置我们已经可以通过访问www.taoge.com访问到不同的tomcat来分担服务器端的压力.请求负载过程中会话信息不能丢失.那么需要在多个tomcatsession需要共享.

* 配置Tomcatsession共享可以有三种解决方案:

第一种是以负载均衡服务器本身提供的session共享策略,每种服务期的配置是不一样的并且nginx本身是没有的。

第二种是利用web容器本身的session共享策略来配置共享。针对于weblogic这种方式还是靠普的。但是针对于tomcat这种方式存在很大的缺陷,主要因为是依靠广播方式来实现的session复制,会浪费很多带宽导致整个网络反映缓慢。官网也建议这种方式最好不要超过4tomcat,具体的内容可参考/webapps/docs/cluster-howto.html里面有详细的说明。下面是具体的配置过程

第三种是Tomcat集群+redisSession共享配置方法.

在这里我们以第二种方式为例:

配置Tomcatsession的共享:

步骤一:修改server.xml文件,最简单的集群配置只需要将节点中注释掉的下面这句取消注释即可:

Xml代码:

    <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>  

使用这样方法配置的集群会将Session同步到所在网段上的所有配置了集群属性的实例上(此处讲所在网段可能不准确,是使用Membership addressport来区分的。tomcat集群的实例如果在Membership配置中有相同的addressport值的tomcat被分到同一个集群里边。他们的session是相互共享的,同一个session的集群被称为一个cluster。可以配置多个cluster,但是clustercluster之间的session是不共享的)。也就是说如果该广播地址下的所有Tomcat实例都会共享Session,那么假如有几个互不相关的集群,就可能造成Session复制浪费,所以为了避免浪费就需要对节点多做点设置了,如下:

Xml代码

 

加了一个Channel,里面包了个Membership,咱们要关注的就是membershipport属性和address属性,不同的集群设置不同的port值或address值,从目前的使用来看,基本上是隔离开了。

 

步骤二:修改项目的web.xml文件:

web.xml文件的修改很简单:只需要在节点中添加这个节点<distributable/>就可以了。

OK,有了这步就实现了Tomcat的集群和Session的共享了。

 

 

 

 

 

转载地址:https://codingchaozhang.blog.csdn.net/article/details/80720868 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Virtual Box配置Centos7网络
下一篇:Tomcat服务器的配置信息

发表评论

最新留言

哈哈,博客排版真的漂亮呢~
[***.90.31.176]2024年04月30日 03时35分27秒