windows 下 ngix + tomcat 集群

第一步:
下载: nginx
nginx 下载地址: http://nginx.org/en/download.html
第二步:配置
第三步,开启
新建文件夹: nginx+tomcat  将两个文件放在当前文件夹
3.1
解压 nginx ,解压导当前文件夹
3.2 进入目录
nginx 目录下,找到 nginx.exe 双击
3.3 查看进程
 
结束 nginx 进程:
3.3 1 直接点击结束
通过命令:
快速停止或关闭 nginx 命令: nginx -s stop
正常停止或关闭 nginx 命令: nginx -s quit
配置文件修改重装载命令: nginx -s reload
3.4 测试访问
显示 welcome to nginx 说明成功
 
4. 打包项目为 war
4.1.1 普通项目打包:
1 》选中项目 ---à 点击右键 ---àexport--à 选中 war file-à
 
2 Mave 项目导出 war 文件:
选中项目 ---à 点击右键 ---à run as (debug as )-à maven install
4.2.1 解压 tomcat
解压到当前文件夹。后重命名为 tomcat1 tomcat2
然后打开 Tomcat conf 目录下的 server.xml ,修改这两个 Tomcat 的启动端口,分别为 8090 8100
这是 tomcat1 ,我是在默认端口上都加的 10 tomcat2 在默认端口都加 20
 
 
 
 
 
 
 
 
 
 
这样两个 tomcat 就能同时启动
 
 
 
 
把解压好的项目通常放在和 tomcat 同一级,而不是放在 tomcat webapp
 
 
 
 
 
 
 
在两个 tomcat    conf 文件夹下    server.xml 文件里  找到 139 行  
 
 
 
 
在下面添加如下语句      路径是你解压好项目的路径
 
<Context path="" docBase="D:\ruan-jian\tomcat+ning-jiqun\bbs"/>
 
 
 
5.1 整合 nginx+tomcat
5.1.1 配置 nginx
打开 nginx -1.1.14 文件夹 --->conf 文件夹 ---> 打开 nginx.conf 文件
注意下面的配置文件是按照我    目前  tomcat 的端口来进行配置的  也就是   8090    和   8100
如果 改动端口 则需要更改此配置文件;
 
 
#user  nobody;# 配置用户或者组,默认为 nobody nobody
worker_processes  1;# 允许生成的进程数,默认为 1
 
#error_log  logs/error.log;# 制定日志路径,级别。这个设置可以放入全局块, http 块, server 块,级别以此为: debug|info|notice|warn|error|crit|alert|emerg
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;
 
#pid        logs/nginx.pid; # 指定 nginx 进程运行文件存放地址
 
 
events {
    accept_mutex on;   # 设置网路连接序列化,防止惊群现象发生,默认为 on
    multi_accept on;  # 设置一个进程是否同时接受多个网络连接,默认为 off
    #use epoll;      # 事件驱动模型, select|poll|kqueue|epoll|resig|/dev/poll|eventport
    worker_connections  1024;# 最大连接数,默认为 512
}
 
 
http {
    include       mime.types;# 文件扩展名与文件类型映射表
    default_type  application/octet-stream;# 默认文件类型,默认为 text/plain
    #access_log off; # 取消服务日志   
    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';# 自定义格式
 
    #access_log  logs/access.log  main;
 
    sendfile        on;# 允许 sendfile 方式传输文件,默认为 off ,可以在 http 块, server 块, location 块。
    #tcp_nopush     on;
 
    #keepalive_timeout  0;
    keepalive_timeout  60; # 连接超时时间,默认为 75s ,可以在 http server location 块。
 
    gzip  on;
    upstream mysvr {
ip_hash;
      server 127.0.0.1:8090 weight=1;
      server 127.0.0.1:8100 weight=1;
    }
    server {
        listen       89;# 监听端口
        server_name  localhost;# 监听地址
 
        #charset koi8-r;
 
        #access_log  logs/host.access.log  main;
 
        
        location / {         
           proxy_pass  http://mysvr;  # 请求转向 mysvr 定义的服务器列表         
        }
        #error_page  404              /404.html;
error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
       
 
        # proxy the PHP scripts to Apache listening on 127.0.0.1:80
        #
        #location ~ \.php$ {
        #    proxy_pass   http://127.0.0.1;
        #}
 
        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        #location ~ \.php$ {
        #    root           html;
        #    fastcgi_pass   127.0.0.1:9000;
        #    fastcgi_index  index.php;
        #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
        #    include        fastcgi_params;
        #}
 
        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        #
        #location ~ /\.ht {
        #    deny  all;
        #}
    }
 
 
    # another virtual host using mix of IP-, name-, and port-based configuration
    #
    #server {
    #    listen       8009;
    #    listen       somename:8089;
    #    server_name  somename  alias  another.alias;
 
    #    location / {
    #        root   html;
    #        index  index.html index.htm;
    #    }
    #}
 
 
    # HTTPS server
    #
    #server {
    #    listen       443 ssl;
    #    server_name  localhost;
 
    #    ssl_certificate      cert.pem;
    #    ssl_certificate_key  cert.key;
 
    #    ssl_session_cache    shared:SSL:1m;
    #    ssl_session_timeout  5m;
 
    #    ssl_ciphers  HIGH:!aNULL:!MD5;
    #    ssl_prefer_server_ciphers  on;
 
    #    location / {
    #        root   html;
    #        index  index.html index.htm;
    #    }
    #}
 
}
测试是否成功:启动顺序
先启动 nginx ,之后再启动 tomcat
两者之间的以来关系,所以要按照顺序来开启
Nginx 访问项目路径: http://localhost:89/
 
 
5.2.1 如何判断浏览器使用的是哪个服务器?
修改 tomcat 文件夹下 conf 目录下的 server 文件第 105
 
 
5.3 session 共享问题
在项目的 web.xml 文件最后加上 <distributable/> ,如下图
 
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值