Tengine笔记3:Nginx的反向代理和健康状态检查

rpm -ivh jdk-7u79-linux-x64.rpm
vi ~/.bash_profile
PATH=$PATH:$HOME/bin
JAVA_HOME=/usr/java/jdk1.7.0_79/
PATH=$PATH:$JAVA_HOME/bin
export PATH
#解压:
tar -zxvf apache-tomcat-7.0.61.tar.gz
mv apache-tomcat-7.0.61 /usr/local/tomcat
#将端口改为80
vim /usr/local/tomcat/conf/server.xml #启动Tomcat
sh /usr/local/tomcat/bin/startup.sh




#将Tomcat的默认端口8080改为80
vim /usr/local/tomcat/webapps/ROOT/index.jsp


#upstream localhost{
##weigth参数表示权值,权值越高被分配到的几率越大
#server 127.0.0.1:9001 weight=1 max_fails=2 fail_timeout=30s;
#server 127.0.0.1:9004 weight=1 max_fails=2 fail_timeout=30s;
#server 127.0.0.1:9007 weight=1 max_fails=2 fail_timeout=30s;
}
vim /etc/usr/local/tengine-2.1.0/conf/nginx.conf
#通过 upstream 进行请求转发
upstream backend{
server 192.168.163.13:80;
server 192.168.163.14:80;
}
server {
location / {
proxy_pass http://backend;
}
location /status{
check_status;
}
}
重启Nginx
然后我们用不同的浏览器,去反复请求 192.168.163.11 会发现,服务器会在两个Tomecat之间来回切换;


为添加tengine的状态监控
Tengine的状态监控分为两种:
文档:http://tengine.taobao.org/documentation_cn.html
我们演示一个最简单的健康检查模块,只需要在upstream里面添加下面代码,然后在location中启用即可:
check interval=3000 rise=2 fall=5 timeout=1000 type=http;
check_keepalive_requests 100;
check_http_send "HEAD / HTTP/1.1\r\nConnection: keep-alive\r\n\r\n";
check_http_expect_alive http_2xx http_3xx;
upstream backend{
server 192.168.163.13:80;
server 192.168.163.14:80;
check interval=3000 rise=2 fall=5 timeout=1000 type=http;
check_http_send "HEAD / HTTP/1.0\r\n\r\n";
check_http_expect_alive http_2xx http_3xx; }
server {
location / {
proxy_pass http://backend;
}
location /status{
check_status;
}
}








Tengine笔记3:Nginx的反向代理和健康状态检查的更多相关文章
- nginx笔记 安装nginx 配置 反向代理 多虚拟主机
1,检测linux上是否 通过yum安装了nginxrpm -qi nginx 2.安装nginx之前的依赖包yum install gcc patch libffi-devel python- ...
- nginx_upstream_check_module-master对nginx的后端机器进行健康状态检查报403错误【转】
在nginx.conf配置文件中 在server添加 location /nstatus { check_status; access_log off; #allow 192.168.2.11; #d ...
- Nginx 笔记与总结(15)nginx 实现反向代理 ( nginx + apache 动静分离)
在 nginx 中,proxy 用来实现反向代理,upstream 用来实现负载均衡. 例如有两台服务器,nginx 服务器作为代理服务器,执行 .html 文件,apache 服务器上执行 .php ...
- 运维工作笔记-------nginx的反向代理
1.nginx的反向代理意义 一般来说,我们在项目中,不会直接让项目服务器ip与外网做直接映射,这样一则是不安全,二是客户直接去访问项目服务器,对项目服务器带来的压力太大,从而导致项目运行速度变慢,程 ...
- [笔记]nginx配置反向代理和负载均衡
1.nginx配置文件:源码安装情况下,nginx.conf在解压后的安装包内.yum安装,一般情况下,一部分在/etc/nginx/nginx.conf中,一部分在/etc/nginx/conf.d ...
- [转]Nginx介绍-反向代理、负载均衡
原文:https://www.cnblogs.com/wcwnina/p/8728391.html 作者:失恋的蔷薇 1. Nginx的产生 没有听过Nginx?那么一定听过它的"同行&qu ...
- Windos环境用Nginx配置反向代理和负载均衡
Windos环境用Nginx配置反向代理和负载均衡 引言:在前后端分离架构下,难免会遇到跨域问题.目前的解决方案大致有JSONP,反向代理,CORS这三种方式.JSONP兼容性良好,最大的缺点是只支持 ...
- 在ubuntu上面配置nginx实现反向代理和负载均衡
上一篇文章(http://www.cnblogs.com/chenxizhang/p/4684260.html),我做了一个实验,就是利用Visual Studio,基于Nancy框架,开发了一个自托 ...
- nginx的反向代理和负载均衡的一个总结
之前一直觉的nginx的反向代理和负载均衡很厉害的样子,最近有机会接触了一下公司的这方面的技术,发现技术就是一张窗户纸呀,捅破了啥都明白了! 接下来先看一下nginx的反向代理: 简单的来说就是ngi ...
随机推荐
- Number of Containers(数学) 分类: 数学 2015-07-07 23:42 1人阅读 评论(0) 收藏
Number of Containers Time Limit: 1 Second Memory Limit: 32768 KB For two integers m and k, k is said ...
- cenos 7 安装php7
1. CentOS/RHEL 7.x: rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm ...
- IOS Xmpp的Iq发送和解析之请求讨论组成员
#pragma mark - 获取讨论组成员 - (void)getDiscussionMemberInfoWithSendIq:(discussionModel *)data { NSXMLElem ...
- JS~delegate与live
在jquery里有两个方法可以用来绑定自动追加出来的DOM对象,它们是live和delegate,事实上,这两个方法是bind方法的一个变体,在对于固定DOM对象时,我们通常使用bind就可以了,而对 ...
- 浏览器缓存相关http头
近期看雅虎黄金34条,学习下优化站点性能的方法. 当中有一条:"为文件头指定Expires或Cache-Control",详细来说指对于静态内容:设置文件头过期时间Expires的 ...
- android 更改USB显示名称
能力 kernel\drivers\usb\gadget\Android.c 在这个例子中,下列的变化 #define PRODUCT_STRING "Sergeycao" 版权声 ...
- 二、Mp3帧分析(标签帧)
Mp3文件由帧组成,帧分成标签帧和数据帧,本文就Mp3文件的帧进行分析. 一.标签帧 MP3帧头中除了存储一些象private.copyright.original的简单音乐说明信息以外,没有考虑存放 ...
- git push -u origin master 上传出错问题
============================================ 跟着廖学锋教程初学git发现个很奇怪的问题,后面原来发现是这样,有点逗.. ================= ...
- c# 面相对象3-之继承性
继承:类与类之间的关系(父子关系) 子类继承父类,那么子类就拥有父类的公共属性和方法一个子类只能继承一个父类,一个父类可以有好多子类子类对象可以直接转成父类,但父类只能转回对应的子类如果子类转成父类之 ...
- java 短信发送例子 tdy
import java.io.IOException; import java.util.logging.Level;import java.util.logging.Logger;import or ...