Nginx安装及配置详解包括windows环境(二)

技术分享 Story 83浏览 0评论

代理服务器 FQ软件

反向代理服务器 用户--Nginx--IIS

跨平台 配置简单 非阻塞 高并发连接 5W (epoll模型)
一般处理机制(建立链接--接收数据--发送数据)
1.采用阻塞调用的方式,(读事件没有准备好只能等待)阻塞调用会进入内核等待,CPU就会让出去别人用
2.非阻塞 通过不断检查事件状态判断是否可以读写操作,带来的开销比较大
3.异步非阻塞的事件处理机制(select/poll/epoll/lqueue)当事件没有准备好就放到队列里面没有准备好就处理,循环处理读哦个准备号的事件
4.与多线程的比较:不需要创建线程,没有上下文切换,并发再多不会导致

 

nginx支持的负载均衡调度算法方式如下:

  1. weight轮询(默认):接收到的请求按照顺序逐一分配到不同的后端服务器,即使在使用过程中,某一台后端服务器宕机,nginx会自动将该服务器剔除出队列,请求受理情况不会受到任何影响。 这种方式下,可以给不同的后端服务器设置一个权重值(weight),用于调整不同的服务器上请求的分配率;权重数据越大,被分配到请求的几率越大;该权重值,主要是针对实际工作环境中不同的后端服务器硬件配置进行调整的。

  2. ip_hash:每个请求按照发起客户端的ip的hash结果进行匹配,这样的算法下一个固定ip地址的客户端总会访问到同一个后端服务器,这也在一定程度上解决了集群部署环境下session共享的问题。

  3. fair:智能调整调度算法,动态的根据后端服务器的请求处理到响应的时间进行均衡分配,响应时间短处理效率高的服务器分配到请求的概率高,响应时间长处理效率低的服务器分配到的请求少;结合了前两者的优点的一种调度算法。但是需要注意的是nginx默认不支持fair算法,如果要使用这种调度算法,请安装upstream_fair模块

  4. url_hash:按照访问的url的hash结果分配请求,每个请求的url会指向后端固定的某个服务器,可以在nginx作为静态服务器的情况下提高缓存效率。同样要注意nginx默认不支持这种调度算法,要使用的话需要安装nginx的hash软件包

一个master进程,生成一个或读哦个work进程 内存消耗小 内置健康检查功能:一个挂掉不会影响访问 稳定性高 支持压缩
master进程:多进程的方式工作的--配置文件--新的工作进程--告诉老进程工作完成结束
worker :加了一个锁,同一个时候只有一个进程处理

worker_Processes 1工作进程个数
worker-connection 1024

F5--多个Nginx集群---多个web服务器集群
停止服务 niginx -s stop 重新加载配置:nginx -s reload 守护进程:start nginx.exe

配置 server { listen 80 servrer-name 当前服务器域名}
转到服务器集群 location{proxy_pass http://netitcast.com }
服务器集群 upsteam netitcast.com{ 服务器集群名字 weignt权重越大 分配几率越大 #servere 172.168.1.1:8081 weight=1}

 

 

转载请注明:成长的对话 » Nginx安装及配置详解包括windows环境(二)