ImageVerifierCode 换一换
格式:DOCX , 页数:11 ,大小:145.37KB ,
资源ID:9474173      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-9474173.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(利用Nginx 实现负载均衡代理.docx)为本站会员(b****0)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

利用Nginx 实现负载均衡代理.docx

1、利用Nginx 实现负载均衡代理利用Nginx 实现负载均衡代理(有图有真相) 2012-01-21 18:15:50标签:linux server 服务器 web apatch nginx 负载均衡 nginx 休闲 职场 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一,什么是NginxNginx(enginex)是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器。Nginx是由IgorSysoev为俄罗斯访问量第二的Rambler.ru站点开发的,它已经在该站点运行超过四年多了。Igor将源代码以类BSD许可证的形式发布。自Nginx发布四年来,

2、Nginx已经因为它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名了。目前国内各大门户网站已经部署了Nginx,如新浪、网易、腾讯等;国内几个重要的视频分享网站也部署了Nginx,如六房间、酷6等。新近发现Nginx技术在国内日趋火热,越来越多的网站开始部署Nginx。二,为什么要选择Nginx1,与Apache一样,都是HTTP服务器软件,在功能实现上都采用模块化设计,都支持通用语言接口,同时它还支持正向和反向代理,虚拟主机,URL重写,压缩传输,ssl加密传输等。但是,在执行效率上,Nginx处理速度更快,并且占用内存资源更低。除此之外,Nginx还支持Fcgi,这点是Apa

3、che所不能的。2,Nginx的优势:处理静态文件,索引文件的效率非常高;可实现无缓存的反向代理加速,提高网站运行速度;作为负载均衡服务器,支持多种容错和算法;性能高效且稳定。三,因为Nginx的文档大部分是俄文的, 所以现在相关详细中文文档比较少。今天,本人结合工作实践,粗略的谈一下如何利用Nginx的反向代理功能搭建负载均衡服务器。实验拓扑如下:一共4台机器:web1,web2分别为两台web服务器(可以用apache,nginx或者IIS搭建,这里就不详细说了)。网关指向192.168.1.5。两台web服务器上的网页内容,在实际工作环境中应该一致。这里为了验证效果,两台web服务器上的

4、网页内容不一致。我这里为了方便在proxy上用links命令验证的效果如下 Proxy是一台安装了nginx服务器。 1,安装nginx 先安装pcre库,让nginx能够支持HTTP Rewrite。这里我用已经配置好的本地YUM安装 解压nginx 安装nginx安装时,可选的参数非常多,这里我只用了少数几个。具体的参数,可以查看本文档的最后。配置nginx为了方便直接配置好的内容如下 nginx.conf的具体内容如下worker_processes 1; 指定nginx进程数,通常与CPU数相一致events worker_connections 1024; 指定每个进程数最大连接数,

5、默认1024http upstream myserver 设置网络负载均衡,且取名为 myserver (随便取) server 192.168.1.4 weight=4; 第一台web服务器地址,权重为4 server 192.168.1.3 weight=3; 权重越大访问的几率越高 server listen 80; 侦听本机的端口 server_name 192.168.110.1 ;本机的哪个端口来做代理功能,域名为什么 index index.html; 默认读取的网页文件 location / 路径设置 proxy_pass http:/myserver; 指定代理的后端服务器地

6、址和端口 error_page 500 502 503 504 /50x.html; 报错的页面文件 location = /50x.html root html; 启动nginx注意,nginx要用kill命令关闭最后在外网还有一台机器,IP为192,168.110.254,模拟外网用户。测试:多刷一下自此,简单的nginx反向代理的负载均衡全部完成。当然,nginx的参数是非常多的,功能是非常强大的,这里只是去简单的实现这一功能,希望能给读者一点启发另:附上安装可选参数如下:configure 脚本确定系统所具有一些特性,特别是 nginx 用来处理连接的方法。然后,它创建 Makefil

7、e 文件。configure 支持下面的选项:-prefix= - Nginx安装路径。如果没有指定,默认为 /usr/local/nginx。-sbin-path= - Nginx可执行文件安装路径。只能安装时指定,如果没有指定,默认为/sbin/nginx。-conf-path= - 在没有给定-c选项下默认的nginx.conf的路径。如果没有指定,默认为/conf/nginx.conf。-pid-path= - 在nginx.conf中没有指定pid指令的情况下,默认的nginx.pid的路径。如果没有指定,默认为 /logs/nginx.pid。-lock-path= - nginx

8、.lock文件的路径。-error-log-path= - 在nginx.conf中没有指定error_log指令的情况下,默认的错误日志的路径。如果没有指定,默认为 /logs/error.log。-http-log-path= - 在nginx.conf中没有指定access_log指令的情况下,默认的访问日志的路径。如果没有指定,默认为 /logs/access.log。-user= - 在nginx.conf中没有指定user指令的情况下,默认的nginx使用的用户。如果没有指定,默认为 nobody。-group= - 在nginx.conf中没有指定user指令的情况下,默认的ng

9、inx使用的组。如果没有指定,默认为 nobody。-builddir=DIR- 指定编译的目录-with-rtsig_module- 启用 rtsig 模块-with-select_module-without-select_module- Whether or not to enable the select module. This module is enabled by default if a more suitable method such as kqueue, epoll, rtsig or /dev/poll is not discovered by configure./

10、允许或不允许开启SELECT模式,如果 configure 没有找到更合适的模式,比如:kqueue(sun os),epoll (linux kenel 2.6+), rtsig(实时信号)或者/dev/poll(一种类似select的模式,底层实现与SELECT基本相 同,都是采用轮训方法) SELECT模式将是默认安装模式-with-poll_module-without-poll_module- Whether or not to enable the poll module. This module is enabled by default if a more suitable m

11、ethod such as kqueue, epoll, rtsig or /dev/poll is not discovered by configure.-with-http_ssl_module- Enable ngx_http_ssl_module. Enables SSL support and the ability to handle HTTPS requests. Requires OpenSSL. On Debian, this is libssl-dev./开启HTTP SSL模块,使NGINX可以支持HTTPS请求。这个模块需要已经安装了OPENSSL,在DEBIAN上是

12、libssl-dev-with-http_realip_module- 启用 ngx_http_realip_module-with-http_addition_module- 启用 ngx_http_addition_module-with-http_sub_module- 启用 ngx_http_sub_module-with-http_dav_module- 启用 ngx_http_dav_module-with-http_flv_module- 启用 ngx_http_flv_module-with-http_stub_status_module- 启用 server status 页

13、-without-http_charset_module- 禁用 ngx_http_charset_module-without-http_gzip_module- 禁用 ngx_http_gzip_module. 如果启用,需要 zlib 。-without-http_ssi_module- 禁用 ngx_http_ssi_module-without-http_userid_module- 禁用 ngx_http_userid_module-without-http_access_module- 禁用 ngx_http_access_module-without-http_auth_bas

14、ic_module- 禁用 ngx_http_auth_basic_module-without-http_autoindex_module- 禁用 ngx_http_autoindex_module-without-http_geo_module- 禁用 ngx_http_geo_module-without-http_map_module- 禁用 ngx_http_map_module-without-http_referer_module- 禁用 ngx_http_referer_module-without-http_rewrite_module- 禁用 ngx_http_rewrit

15、e_module. 如果启用需要 PCRE 。-without-http_proxy_module- 禁用 ngx_http_proxy_module-without-http_fastcgi_module- 禁用 ngx_http_fastcgi_module-without-http_memcached_module- 禁用 ngx_http_memcached_module-without-http_limit_zone_module- 禁用 ngx_http_limit_zone_module-without-http_empty_gif_module- 禁用 ngx_http_emp

16、ty_gif_module-without-http_browser_module- 禁用 ngx_http_browser_module-without-http_upstream_ip_hash_module- 禁用 ngx_http_upstream_ip_hash_module-with-http_perl_module- 启用 ngx_http_perl_module-with-perl_modules_path=PATH- 指定 perl 模块的路径-with-perl=PATH- 指定 perl 执行文件的路径-http-log-path=PATH- Set path to th

17、e http access log-http-client-body-temp-path=PATH- Set path to the http client request body temporary files-http-proxy-temp-path=PATH- Set path to the http proxy temporary files-http-fastcgi-temp-path=PATH- Set path to the http fastcgi temporary files-without-http- 禁用 HTTP server-with-mail- 启用 IMAP4

18、/POP3/SMTP 代理模块-with-mail_ssl_module- 启用 ngx_mail_ssl_module-with-cc=PATH- 指定 C 编译器的路径-with-cpp=PATH- 指定 C 预处理器的路径-with-cc-opt=OPTIONS- Additional parameters which will be added to the variable CFLAGS. With the use of the system library PCRE in FreeBSD, it is necessary to indicate -with-cc-opt=-I /u

19、sr/local/include. If we are using select() and it is necessary to increase the number of file descriptors, then this also can be assigned here: -with-cc-opt=-D FD_SETSIZE=2048.-with-ld-opt=OPTIONS- Additional parameters passed to the linker. With the use of the system library PCRE in FreeBSD, it is

20、necessary to indicate -with-ld-opt=-L /usr/local/lib.-with-cpu-opt=CPU- 为特定的 CPU 编译,有效的值包括:pentium, pentiumpro, pentium3, pentium4, athlon, opteron, amd64, sparc32, sparc64, ppc64-without-pcre- 禁止 PCRE 库的使用。同时也会禁止 HTTP rewrite 模块。在 location 配置指令中的正则表达式也需要 PCRE 。-with-pcre=DIR- 指定 PCRE 库的源代码的路径。-with

21、-pcre-opt=OPTIONS- Set additional options for PCRE building.-with-md5=DIR- Set path to md5 library sources.-with-md5-opt=OPTIONS- Set additional options for md5 building.-with-md5-asm- Use md5 assembler sources.-with-sha1=DIR- Set path to sha1 library sources.-with-sha1-opt=OPTIONS- Set additional o

22、ptions for sha1 building.-with-sha1-asm- Use sha1 assembler sources.-with-zlib=DIR- Set path to zlib library sources.-with-zlib-opt=OPTIONS- Set additional options for zlib building.-with-zlib-asm=CPU- Use zlib assembler sources optimized for specified CPU, valid values are: pentium, pentiumpro-with-openssl=DIR- Set path to OpenSSL library sources-with-openssl-opt=OPTIONS- Set additional options for OpenSSL building-with-debug- 启用调试日志-add-module=PATH- Add in a third-party module found in directory PATH在不同版本间,选项可能会有些许变化,请总是使用./configure -help命令来检查一下当前的选项列表

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2