ngixn如何控制多进程连接的平衡
来源:互联网 发布:linux weblogic创建域 编辑:程序博客网 时间:2024/06/01 13:53
nginx是一个多进程异步非阻塞的网络服务器。其一般有一个master进程和多个worker进程共同处理请求。其中master进程负责接收客户端的请求和管理work进程。work进程具体处理每个客户端的连接。当客户端请求到来时,多个work进程会去争取对该请求进行连接,那么如何能够保证多个进程的连接数保持一定的平衡而不至于使得某些进程负载过重呢?
nginx通过使每个进程都保存一个自己的连接池,且每个进程都有最大连接限制work_connections. nginx服务器就是通过计算每个进程的空闲连接数来限制该进程是否去抢占接收连接的锁accept_mutex.如当空闲连接数小于最大连接数的1/8时,该进程放弃抢占锁,并对空闲连接数执行虚拟加1的操作,当一个进程在一段时间内一直没有去抢占锁使得虚拟的空闲连接数大于1/8时,则该进程尝试着去抢占锁,当抢占到锁后重新计算真实的空闲连接数。伪代码如下:
阅读全文
0 0
- ngixn如何控制多进程连接的平衡
- 如何控制一个进程CPU的占用率
- ngixn进程数 什么是nginx进程 是干什么????
- 如何控制 Internet Explorer 浏览器的进程数量
- 控制命令是如何kill到前台进程组的
- 数据库应用安全:如何平衡加密与访问控制
- Postgresql8.3 如何控制来自其他电脑的连接
- 如何控制C#Socket的连接超时时间
- 使用ffmpeg的av_read_frame,如何控制连接超时
- 进程的控制[原创]
- Linux的进程控制
- 进程的控制
- 进程控制的函数
- 进程的控制
- scala的进程控制
- linux 进程的控制
- 进程的控制
- os -- 进程的控制
- java 实现http响应
- 视频学习笔记:Android ffmpeg解码多路h264视频并显示
- 基于注解的Spring整合SpringMVC开发流程?
- 链表——Java实现
- java-访问修饰符
- ngixn如何控制多进程连接的平衡
- 图解集合3:CopyOnWriteArrayList
- hibernate中merge的使用以及与update的区别
- ACM一些常用小技巧(博客收集+总结)
- hibernate一对一外键映射
- Oracle数据库的基本操作指令
- 前端页码栏的制作
- FastDfs的使用
- Redux与React-看懂你就懂了