Nginx 下载 与 Windows下搭建集群

Nginx 下载

  • 1、进入Nginx官网:http://nginx.org/en/  进行下载
  • Nginx 下载之后,Windows版本的可以直接双击运行,类似Tomcat,都是绿色版的;Linux版本的需要解压之后进行编译、然后安装,再使用,类似Redis的安装。


  • 2、选择需要的版本进行下载


  • 3、下载下来的文件很小


搭建集群图例

  • 集群搭建图如下,为了简单一点,使用一个Nginx服务器+两个Tomcat服务器,省略数据库部分:


准备Java Web项目

  • 首先准备一个Java Web项目,用于之后部署到Tomcat下运行,部署的时候收到修改一下<h3>中的标识符,以区别不同的Tomcat服务器



准备多个Tomcat服务器


准备 Tomcat 1






准备 Tomcat 2






Nginx 集群

Nginx 启动 与关闭

  • 将 Windows 版解压后 直接双击nginx.exe即可运行,运行时不会弹框,但可以看到进程
  • Nginx 默认使用"80"端口,所以运行之前,保证80端口没有被占用,否则启动失败




Nginx 代理一个服务器

  • 修改nginx的conf目录下的nginx.conf文件,在locatioin / {}中添加反向代理:“proxy_pass 代理服务器路径”


Nginx 代理集群

  • 修改nginx的conf目录下的nginx.conf文件,在http节点下添加如下所示:

                        upstream 自定义名称 {

                                server 服务器IP:端口;

server 服务器IP:端口;
}
  • 修改location / {}中的反向代理 :proxy_pass http://上一步的“自定义名称”

  • 1、重启Nginx服务器
  • 2、然后再次访问,会发现页面随机的显示Tomcat 1与Tomcat 2中的应用内容
  • 但是请注意:集群是为了给服务器负载均衡,减轻压力,但对于用户来说,不管访问的是哪台具体的服务器,内容应该是一样的才对,不可能再服务器A下的单,一刷新访问到服务器B时,订单就没有,这是不允许的,如下所示,显然用户的Session不一致,这就是引出了“Session 共享”的问题。具体请参考《Nginx 集群下的 Session共享》