点击上方“IT那活儿”,关注后了解更多内容,不管IT什么活儿,干就完了!!!
1
2
高并发响应性能非常好:根据给出的数据,能够支持高达5w/s的并发连接数的响应。
内存消耗小:开启10个nginx才占150M内存 ,nginx处理静态文件比apache 占用更少的内存及资源,所有它是轻量级的(为Apache的1/5-1/10)。
配置代码简洁且容易上手:配置简单,基本在一个conf文件中配置,性能比较稳定。
支持负载均衡、反向代理、虚拟主机等。
Nginx内置健康检查功能:可对后端服务进行健康检查。
支持Rwrite重写规则。
低成本:Nginx可以做高并发的负载均衡,且Nginx是开源免费的;
支持PHP cgi方式和FastCGI方式。
可以作为缓存服务器、邮件代理服务器。
3
http服务器:nginx是一个http服务可独立提供http服务。可以做网页静态服务器。
虚拟主机:可以实现在一台服务器虚拟出多个网站,例如个人网站使用的虚拟机。
反向代理:是指以代理服务器身份来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端。
负载均衡:负载均衡的大致原理是指采用一定的分配策略将”网络负载”均衡的分摊到网络集群的多个服务器上。
nginx中也可以配置安全管理:比如可以使用Nginx搭建API接口网关,对每个接口服务进行拦截。
4
核心模块:HTTP模块、EVENT模块和MAIL模块等。 基础模块:HTTP Access模块、HTTP FastCGI模块、HTTP Proxy模块和HTTP Rewrite模块。 第三方模块:HTTP Upstream Request Hash模块、Notice模块和HTTP Access Key模块、Limit_req模块、Upstream check module等。

5
./configure --prefix=/data/gzopen/nginx_8589--user=gzopen --group=gzopen \--with-http_ssl_module --with-http_stub_status_module \--with-http_sub_module --with-http_realip_module \--with-http_gzip_static_module --with-http_addition_module \--with-ipv6 --with-stream --with-stream_ssl_preread_module \--with-stream_ssl_module --with-pcre=../pcre-8.43 \-with-openssl=../openssl-1.1.1c \--with-zlib=../zlib-1.2.11
复制
makemake install
复制
6
global(全区块)
event(事件块)
http(http块)
user nginx;worker_processes 8;error_log logs/error.log;#error_log logs/error.log notice;#error_log logs/error.log info;pid logs/nginx.pid;worker_rlimit_nofile 65535;
复制
events {use epoll;worker_connections 20480;}
复制
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 $request_time;proxy_buffer_size 32k;proxy_buffers 4 64k;proxy_busy_buffers_size 128k; #高负荷下缓冲大小proxy_temp_file_write_size 128k; #缓存文件夹大小proxy_connect_timeout 90; #代理连接超时间proxy_read_timeout 90; #代理接收超时间proxy_send_timeout 90; #后端服务器数据回传时间server_names_hash_bucket_size 128; #服务器名字的hash表大小keepalive_timeout 90; #长连接超时时间large_client_header_buffers 4 32k;client_header_buffer_size 32k;client_max_body_size 16m;client_body_buffer_size 128k;server {listen 10086;server_name www.gz.10086.com;location /10086 { #定义locationproxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;#配置反向代理proxy_pass http://135.10.100.90:8088;}}
复制
7
测试配置是否正确:
nginx -t | nginx -c nginx.conf -t
复制
启动nginx:
nginx | nginx -c nginx.conf
复制
停止nginx:
nginx -s stop
复制
重新加载nginx进程:
nginx -s reload
复制
其它控制指令:
nginx -s signal quit #优雅的停止守护进程(SIGQUIT) reopen #重新打开日志文件
复制
8
rr(默认):按客户端请求顺序把客户端的请求逐一分配到不同的后端节点服务器。
weight: 权重方式,数字越大,权重越大。
ip_hash:根据每个请求访问IP的hash结果分配。(会话保持)
url_hash: 根据访问的url的hash结果分配。(需hash软件包)
fair: 根据后端服务器响应时间最短请求智能分配。(upstream_fair模块)
weight:默认为1,weight越大,负载的权重就越大。
down:表示当前的server暂时不参与负载均衡。
backup:备份服务器。当其他所有的非backup机器出现故障或者忙的时候,才会请求backup机器,因此这台机器的访问压力最低。
max_fails:允许请求失败的最大次数,默认为1,当超过该值时,返回proxy_next_upstream模块定义的错误。
fail_timeout:请求失败超时时间,默认10是。表示如果某台服务器在fail_timeout时间内出现了max_fails次连接失败,则nginx会认为该server已失效,在接下来的fail_timeout时间内,nginx不再将请求发给失效的server。
upstream myapp1 {192.168.100.111;192.168.100.112;
复制
9

END