windows下利用nginx 做IIS负载均衡

2016-12-30 09:57:26来源:oschina作者:深圳大道人点击

如果网站流量变大,就想加服务器分担压力,当然就要用到负载均衡,在windows 2003有自带的网络负载均衡,但配置还是挺麻烦的虽然有轮训和iphash的效果,但效果不算好.


nginx小巧,下载不到1m,容易配置,性能也很可观。简单说一下nginx的简单负载均衡。


1、下载nginx,http://nginx.org/,注意下载windows版本,解压


2、修改conf文件夹下面的nginx.conf文件,加入下面代码


upstream www.zds.name{ server 192.168.1.220:80;//要负载的机器列表server 192.168.1.221:80;}server {//默认则有,可以修改端口,和运行nginx服务器ip,可以和web同一机器listen80;server_name192.168.1.250;#charset koi8-r;#access_loglogs/host.access.logmain;location / {proxy_pass http://www.zds.name;proxy_redirect default; }

3、运行nginx,最好在cmd下运行,先cd到nginx目录,然后支持nginx.exe,这样可以方便查看到启动的错误,当然也可以在log下查看,常常错误都是[emerg] bind() to 0.0.0.0:80 failed (10013: An attempt was ma什么的,因为端口占用了(IIS),可以修改端口。


4、在上面要负载的机器上配置站点,主机头www.zds.name,到此就完成了。下面说一下负载的几种方式


nginx 的 upstream目前支持几种方式的分配
1)、轮询(默认)
每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。
2)、weight
指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。
2)、ip_hash
每个请求按访问ip的hash结果分配,这样每个访客固定(同一ip)访问一个后端服务器,可以解决session的问题。可参考asp.net多域名多服务器共享session,实现单点登陆
3)、fair(第三方)
按后端服务器的响应时间来分配请求,响应时间短的优先分配。

上面只是最简单的用法,可以将做负载的nginx放在linux上运行,性能会高一些,以后有时间继续研究。。。

最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台