一、架构二、唠叨一会原理:1、nginxNginx进程基于于Master+Slave(worker)多进程模型,自身具有非常稳定的子进程管理功能。在Master进程分配模式下,Master进程永远不进行业务处理,只是进行任务分发,从而达到Master进程的存活高可靠性,Slave(worker)进程所有的业务信号都由..
分类:
其他好文 时间:
2014-08-18 09:20:14
阅读次数:
454
从服务器角度一次web资源请求具体过程建立连接:tcp三次握手接收请求处理请求访问资源构建响应报文发送响应记录日志===================================================================httpd工作模型阻塞模型,单进程模型。缺点:每次只能响应一个请求,对于现代的高并发无..
分类:
其他好文 时间:
2014-08-12 03:34:24
阅读次数:
280
一、Nginx整体架构正常执行中的nginx会有多个进程,最基本的有master process(监控进程,也叫做主进程)和woker process(工作进程),还可能有cache相关进程。一个较为完整的整体框架结构如图所示:二、核心进程模型启动nginx的主进程将充当监控进程,而由主进程fork...
分类:
其他好文 时间:
2014-08-03 17:55:25
阅读次数:
303
nginx是以多进程的方式来工作的,当然nginx也是支持多线程的方式的,只是我们主流的方式还是多进程的方式,也是nginx的默认方式。nginx采用多进程的方式有诸多好处。 (1)nginx在启动后,会有一个master进程和多个worker进程。master进程主要用来管理worker进程,包含:接收来自外界的信号,向各worker进程发送信号,监控 worker进程的运行状态,当worker...
分类:
其他好文 时间:
2014-07-29 15:00:48
阅读次数:
149
进程模型
Nginx分为Single和Master两种进程模型,Single模型即为单进程方式工作,具有较差的容错能力,不适合生产之用。Master模型即为一个master进程+N个worker进程的工作方式。生产环境都是用master-worker模型来工作。
master进程
我们知道在main函数中完成了Nginx启动初始化过程,启动初始...
分类:
其他好文 时间:
2014-07-27 11:15:32
阅读次数:
378
进程模型
worker进程
master进程模型核心函数ngx_master_process_cycle()中调用了创建子进程函数ngx_start_worker_processes(),该函数源码如下
static void
ngx_start_worker_processes(ngx_cycle_t *cycle, ngx_int_t n, ngx_int_t type)...
分类:
其他好文 时间:
2014-07-27 11:10:42
阅读次数:
252
1. 实现基础的信号处理 sigaction使用前一定内存清零2. 实现基础的进程模型 wait 等待子进程结束#include "common.h"#include "serversignal.h"static volatile sig_atomic_t graceful=0;int main.....
分类:
Web程序 时间:
2014-07-03 12:40:57
阅读次数:
221
keepalived+nginx双机热备+负载均衡
最近因业务扩展,需要将当前的apache 转为nginx(web), 再在web前端放置nginx(负载均衡)。同时结合keepalived 对前端nginx实现HA。
nginx进程基于于Master+Slave(worker)多进程模型,自身具有非常稳定的子进程管理功能。在Master进程分配模式下,Master进程永远不进行业务处理,只是进行任务分发,从而达到Master进程的存活高可靠性,Slave(worker)进程所有的业务信号都 由主进程发...
分类:
其他好文 时间:
2014-06-19 10:29:19
阅读次数:
307
1.进程介绍: 1.1 进程模型:
进程是一个程序的实际执行,包含了程序计数器的状态,寄存器和变量等等!
程序可以看成是一个状态的序列,程序在不同时刻呈现出不同的状态,而这种状态的前后交替过程可以看成是程序的执行过程。概念上来说,每个程序有自己的虚拟CPU,但在现实中CPU在不同的进程间来回切换.....
分类:
其他好文 时间:
2014-05-29 16:50:26
阅读次数:
290
Linux系统通过软限制和硬限制,制约了打开文件的最大个数,而且每个端口侦听的连接数受限于/etc/sytctl.conf中的ip_local_port_range的范围,那么nginx是如何做到轻量级和高并发的。
Nginx的进程模型
各个work进程间通过accept_mutex互斥锁进行连接的获取,以防止惊群现象的发生(即所有进程都收到通知,却...
分类:
其他好文 时间:
2014-05-22 17:11:39
阅读次数:
364