[Nginx基础]-- nginx反向代理安装配置、服务器状态监控(健康检查)

nginx反向代理安装配置\\服务器状态监控(健康检查)\\session一致性(memcache和redis配置)

一、首先举例配置memcached的session一致性和共享session

 

A准备2台机器(node2和node3)

a\\node3用于安装tomcat3、memcached和nginx

b\\node2只需要安装tomcat即可,

所以注意:在生产环境中,如果不是nginx的集群,那么只需要安装一个memcached!!

安装成功nginx、tomcat和memcached

#yum install memcached  

解压安装tomcat和tengine成功后下一步

B在node3中配置nginx.conf文件(文件内容见备注)

C(1)配置tomcat的context.xml文件(文件内容见备注A

(2)将memcached接口jar放入tomcat的lib目录下

注意:context.xml中只需添加<Manager  />的内容即可

D先开启tomcat,再开启memcached,最后开启tengine!!!

E打开浏览器:

输入http://192.168.142.103/status------------》查看状态

输入http://192.168.142.103/         ------------》查看session和jsp页面

然后停止192.168.142.102的tomcat,再测试即可

(未实现轮循!!!)

 

二、再实现redis的session共享

只需要更改tomcat的context.xml文件为redis配置(内容见备注B

成功安装redis,启动redis服务即可

访问---》http://192.168.142.107/

未实现轮循!!!

 

备注:nginx.conf配置,实现健康检查和session共享

#user  nobody;

worker_processes  1;

#error_log  logs/error.log;

#error_log  logs/error.log  notice;

#error_log  logs/error.log  info;

#pid        logs/nginx.pid;

events {

    worker_connections  1024;

}

http {

    include       mime.types;

    default_type  application/octet-stream;

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '

    #                  '$status $body_bytes_sent "$http_referer" '

    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    sendfile        on;

    #keepalive_timeout  0;

    keepalive_timeout  65;

    upstream nginx{

       session_sticky cookie=uid fallback=on path=/  mode=insert option=indirect;

       server 192.168.142.103:8080   weight=2;

       server 192.168.142.102:8080   weight=1;

       check interval=3000 rise=2 fall=5 timeout=1000 type=http; #如果是https那么就配https

       check_http_send "HEAD /index.jsp HTTP/1.0\r\n\r\n";

       check_http_expect_alive http_2xx http_3xx;

    }

    server {

        listen       80;

        server_name  www.sx2.com;#如果在windows的hosts中配置了映射,则可以直接访问

        location / {

            session_sticky_hide_cookie upstream=nginx;

            proxy_pass http://nginx;

            proxy_set_header  Host  $host;

            proxy_set_header X-Real-IP $remote_addr;

            root   html;

            index  index.html index.htm;

        }

       location /status {

         check_status ;#多个tomcat的健康检查

        }

        error_page   500 502 503 504  /50x.html;

        location = /50x.html {

            root   html;

        }

    }

}

 

备注A:tomcat的context.xml文件配置memcached

 

<?xml version='1.0' encoding='utf-8'?>

<Context>

 <!-- Default set of monitored resources -->

 <WatchedResource>WEB-INF/web.xml</WatchedResource>

 <Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"

     memcachedNodes="n1:192.168.142.103:11211"

     sticky="false"

     lockingMode="auto"

     sessionBackupAsync="false"

     requestUriIgnorePattern=".*\.(ico|png|gif|jpg|css|js)$"

     sessionBackupTimeout="1000"

     transcoderFactoryClass="de.javakaffee.web.msm.serializer.kryo.KryoTranscoderFactory"

    />

</Context>

 

备注B:tomcat的context.xml文件配置redis

<?xml version='1.0' encoding='utf-8'?>

<Context>

    <!-- Default set of monitored resources -->

    <WatchedResource>WEB-INF/web.xml</WatchedResource>

   <Valve className="com.orangefunction.tomcat.redissessions.RedisSessionHandlerValve" />

   <Manager className="com.orangefunction.tomcat.redissessions.RedisSessionManager"

         host="192.168.142.107"

         port="6379"

         database="0"

         maxInactiveInterval="60" 

    />

</Context>

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

往事随风ing

你的鼓励将是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值