windows配置nginx实现负载均衡集群 -请求分流
windows配置nginx实现负载均衡集群
一、windows上安装nginx
1、下载nginx的windows版本http://nginx.org/en/download.html
2、把压缩文件解压至c盘根目录,并将文件夹重命名成nginx
3、在conf目录下的nginx.conf文件中,指定一个不冲突的端口号,这里测试用8088,代码段如下:
server {
listen 8090;
server_name localhost;
}
4、打开cmd命令行,运行如下命令:start nginx.exe
1. >cd c:\nginx
2. >nginx
好了,试试吧,打开浏览器,输入127.0.0.1:8090,如果出现下图,那就说明nginx服务器已经成功安装.

二、配置nginx负载均衡
1、打开conf目录下的nginx.conf,具体配置代码如下:
#nginx进程,一般设置为和cpu核数一样
worker_processes 1;
#全局错误日志及PID文件
error_log logs/error.log;
pid logs/nginx.pid;
#工作模式及连接数上限
events {
use epoll; #epoll是多路复用IO(I/O Multiplexing)中的一种方式,但是仅用于linux2.6以上内核,可以大大提高nginx的性能
worker_connections 1024;#单个后台worker process进程的最大并发链接数
# multi_accept on;
}
#设定http服务器,利用它的反向代理功能提供负载均衡支持
http {
include mime.types;#文件扩展名与类型映射表
default_type application/octet-stream;#默认文件类型
access_log logs/access.log; #设定日志格式
sendfile on; #开启高效传输模式
#连接超时时间 单位是秒
keepalive_timeout 65;
tcp_nodelay on;
#开启gzip压缩
gzip on;
gzip_disable "MSIE [1-6]\.(?!.*SV1)";
#设定请求缓冲
client_header_buffer_size 1k;
large_client_header_buffers 4 4k;
#设定负载均衡的服务器列表
upstream leizi { #weigth参数表示权值,权值越高被分配到的几率越大
server 10.204.3.223:8090 weight=1 max_fails=2 fail_timeout=30s;#真实服务器A
server 10.204.3.20:8090 weight=1 max_fails=2 fail_timeout=30s;#真实服务器B #这里是在30s内尝试2次失败即认为主机不可用!
}
#基于域名的虚拟主机
server {#Nginx代理服务器
listen 8090;
server_name localhost;
access_log logs/localhost.access.log main;#设定本虚拟主机的访问日志
#默认请求
location / {
root html; #站点根目录,即网站程序存放目录
index index.html index.htm index.php; #首页排序
proxy_pass http://leizi; #请求转向leizi定义的服务器列表
proxy_redirect default;
}
# 定义错误提示页面
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
#静态文件,nginx自己处理
location ~ ^/(images|javascript|js|css|flash|media|static)/ {
root html;
#过期30天,静态文件不怎么更新,过期可以设大一点,如果频繁更新,则可以设置得小一点。
expires 30d;
}
#location 标签,根目录下的.svn目录禁止访问
location ~ /.svn/ {
deny all;
}
#设定查看Nginx状态的地址
location /NginxStatus {
stub_status on;
access_log on;
auth_basic "NginxStatus";
auth_basic_user_file conf/htpasswd;
}
}
}
2、重启一下nginx吧,你可以在任务管理器中将原来的两个nginx进程结束然后按前面安装时的方法启动nginx,也可以直接输入命令:nginx -s reload来重启
三、部署网站
1、准备两个完全一样的ASP.NET测试网站程序,
2、分别放在leizi服务器列表的IIS中,输入对应的ip地址试一下是否可用访问。
3、访问代理服务器 127.0.0.1:8090 访问结果是每刷新一次就在leizi列表之间切换。
四、总结:
访问代理服务器 127.0.0.1:8090 访问结果是每刷新一次就在leizi列表之间切换 这样就起到了简单的轮询访问的效果,一定程度上起到了负载分流的作用至此,windows配置nginx实现负载均衡集群已经完成。
windows配置nginx实现负载均衡集群 -请求分流的更多相关文章
- windows配置nginx实现负载均衡集群
windows配置nginx实现负载均衡集群2014-08-20 09:44:40 来源:www.abcde.cn 评论:0 点击:617 网上大部分关于nginx负载均衡集群的教程都是lin ...
- keepalived + nginx 搭建负载均衡集群
第一章 keepalived 1.1 keepalived 服务说明 Keepalived软件起初是专为LVS负载均衡软件设计的,用来管理并监控LVS集群系统中各个服务节点的状态,后来又加入了可以实现 ...
- Redhat/CentOS7-环境虚拟机简单搭建Nginx+Tomcat负载均衡集群
Tomcat服务器是一个免费的开放源代码的web应用服务器,属于轻量级应用服务器,是开发和调试JSP程序的首选.由于Tomcat处理静态HTML的能力运不及Apache或者Nginx,所以Tomcat ...
- CentOS6.5+nginx+tomcat负载均衡集群
思路: 1.安装jdk 2.安装tomcat 3.安装nginx依赖库 4.安装nginx 5.nginx+2个tomcat集群 一:网络拓扑
- Nginx搭建负载均衡集群
(1).实验环境 youxi1 192.168.5.101 负载均衡器 youxi2 192.168.5.102 主机1 youxi3 192.168.5.103 主机2 (2).Nginx负载均衡策 ...
- Nginx+Tomcat 负载均衡集群
案例分析 通常情况下,一台Tomcat站点由于可能出现单点故障及无法应对多客户复杂多样性的请求等问题,不能单独应用于生产环境下,所以我们需要一套更可靠的解决方案来完善Web站点架构. Nginx是一款 ...
- lvs+keepalived+nginx高性能负载均衡集群
项目发布时候,别人还能访问呢? 双机主从热备 LVS作用 LVS是一个开源的软件,可以实现传输层四层负载均衡.LVS是Linux Virtual Server的缩写,意思是Linux虚拟服务器.目前有 ...
- 使用Redis存储Nginx+Tomcat负载均衡集群的Session
配置Tomcat的session共享可以有三种解决方案: 第一种是以负载均衡服务器本身提供的session共享策略,每种服务期的配置是不一样的并且nginx本身是没有的. 第二种是利用web容器本身的 ...
- 同主机下Docker+nginx+tomcat负载均衡集群搭建
想用Docker模拟一下nginx+tomcat集群部署,今天折腾了一天,遇坑无数,终于在午夜即将到来之际将整个流程走通,借本文希望给同样遇到类似问题的小伙伴们留点线索. 主机环境是CentOS 7, ...
随机推荐
- 01 JVM 从入门到实战 | 什么是 JVM
什么是 JVM 先来看下百度百科的解释: JVM 是 Java Virtual Machine(Java 虚拟机)的缩写,JVM 是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算 ...
- IdentityServer4 中文文档与实战
写在前面 写于2018.9.12 我研究 IdentityServer4 是从.net core 1.1的时候开始的,那时候国内的中文资料比较少,我都是按照官方文档来研究的,整理成了笔记.这个系列文档 ...
- 从零开始学习PYTHON3讲义(十五)让画面动起来
<从零开始PYTHON3>第十五讲 虽然看起来绘图和音乐并不相关,但是听过了上一讲的内容你一定知道,这是游戏编程中四个需要处理内容的两部分,这两部分必须同时.并行的处理,不能因为某一项计算 ...
- Docker Swarm搭建多服务器下Docker集群
对于有多台服务器来讲,如果每一台都去手动操控,那将会是一件非常浪费时间的事情,毕竟时间这东西,于我们而言,十分宝贵,或许在开始搭建环境的时候耗费点时间,感觉是正常的,我也如此,花费大堆时间在采坑和填坑 ...
- springboot~JPA把ORM统一起来
JPA介绍 JPA(Java Persistence API)是Sun官方提出的Java持久化规范.它为Java开发人员提供了一种对象/关联映射工具来管理Java应用中的关系数据.他的出现主要是为了简 ...
- 结对开发nabcd
各位领导/投资人/用户/合作伙伴: 我们的产品校园生活 是为了解决 广大在校师生对于信息难以得到的痛苦,他们需要了解有关于学校开办的各种活动的信息还有各种二手商品的交换信息,他们也需要一个公开的平台 ...
- 在ASP.NET Core中构建路由的5种方法
原文链接 :https://stormpath.com/blog/routing-in-asp-net-core 在ASP.NET Core中构建路由的5种方法 原文链接 :https://storm ...
- 用bat批处理程序通过DOS命令行删除所有的空文件夹
用过gothub或者码云的同学都知道,不包含任何文件的空文件夹上传提交时不被允许的.当然你可以在空文件下创建.keep文件(或.gitkeep文件),然后就可以上传了. 但是如果空文件夹比较多,并且我 ...
- oracle数据库导出表结构步骤
导出完成后在状态栏中显示Find
- idea git提交时候提示 --author 'java_suisui' is not 'Name ' and matches no existing author
今天使用idea修改git项目的作者信息,提交时遇到错误: 0 files committed, 1 file failed to commit: test --author 'java_suisui ...