nginx学习之进程控制篇(三)】的更多相关文章

1. 进程 nginx有一个master进程和一个或多个工作进程. master process worker process or master process worker process worker process ... 如果开启了caching功能,那么在nginx启动的时候,还会有缓存加载器进程和缓存管理器进程启动: cache loader cache manager nginx依靠某种机制来高效地分发请求到worker processes上,而这种机制又是依赖于操作系统的. w…
1.进程和程序 程序是一个可执行文件,而一个进程是一个执行中的程序实例.一个进程对应于一个程序的执行,进程是动态的,程序是静态的,多个进程可以并发执行同一个程序.比如几个用户可以同时运行一个编辑程序,每个用户对此程序的执行均作为一个单独的进程. 2.进程控制的系统调用一个进程可以启动另一个进程,进程之间形成层次结构,而进程树的顶端是一个控制进程,一个名为Init的程序的执行,该进程是所有用户进程的祖先.主要的系统调用有 fork()   通过复制调用进程来建立新的 进程,是最基本的进程建立操作…
Nginx服务器的安装请参考Nginx学习笔记之安装篇 关于Nginx配置文档的API在这里就不一一列出,现在我们来配置第一个Nginx架构实现负载均衡的网站. 1.打开IIS,配置如下站点 重复上述操作,配置三个网站,端口分别是8021.8022.8023 2.用记事本打开Nginx文件夹下的配置文档 3.在http代码块内,添加下面的代码 upstream localhost { server 192.168.0.115:8021 weight=1; server 192.168.0.115…
在windows下安装Nginx其实非常简单,只需如下几个步骤: 1. 在Nginx官网下载相应版本的安装程序,上面有最新版.稳定版等各种版本,正式运营的项目建议下载最新的稳定版 2.将下载后的压缩包解压到将要安装Nginx的硬盘上 Nginx文件夹内的架构目录为: 3.使用命令提示符工具,进入上述Nginx文件夹内,使用命令 start nginx.exe 安装Nginx,具体过程如下 4.安装成功后,会在任务管理器中看到nginx的进程 5.如果进程中没有出现Nginx.exe,说明安装失败…
在上一篇文章Nginx学习笔记之应用篇中,我们已经可以正式运行自己的网站了.但是在使用Nginx服务器时还需要注意几个问题: 1.Nginx服务器上配置的单个站点的并发量不超过1024 2.Nginx For Windows的版本只作为一个控制台应用程序在运行,而不是以服务的形式,所以不支持自动重启. 3.在使用Nginx时,出于安全考虑,最好可以修改页面响应中的Server名称和程序信息 解决方案: 第一步:隐藏Nginx版本号 首先打开fastcgi.conf文件 修改 fastcgi_pa…
一.信号控制 1)TERM, INT   Quick shutdown  \\麻溜停掉(暴力停止),一般不常用 // 启动和停止nginx 当前目录:/usr/local/bin/nginx 启动: ./sbin/nginx 停止 : kill -INT master 主机进程号 2)QUIT    Graceful shutdown  优雅的关闭进程,即等请求结束后再关闭 kill -quit 进程ID 3)HUP   Configuration reload ,Start the new w…
1. 进程间打开文件的继承 1.1. 用fork继承打开的文件 fork以后的子进程自动继承了父进程的打开的文件,继承以后,父进程关闭打开的文件不会对子进程造成影响. 示例: #include <stdio.h> #include <fcntl.h> #include <unistd.h> #include <sys/types.h> #include <sys/stat.h> int main() { char szBuf[32] = {'\0…
在本节,你将学会: --如何根据不同的协议,将请求转发到后端服务器: --修改发送到后端服务器的请求头: --以及配置是否buffering从后端服务器返回来的响应. 1. 将请求转发给后端服务器 当nginx代理一个请求时,它会将请求转发给一个指定的后端服务器,然后从后端服务器获取相应,最后将响应返回给用户. 可以将请求代理给一个HTTP服务器(nginx服务器或者apache服务器或者lighttpd服务器),也可以代理给一个非HTTP服务器(这个服务器运行着一个应用程序,该应用程序可能 是…
1.根目录和索引文件 server { root /www/data; location / { } location /images/ { } location ~ \.(mp3|mp4) { root /www/media; } } root指令能放置的位置是:http,server,location. 上面的意思是:我所有的location定义都是基于根目录/www/data的,也就是说"/"指的就是/www/data/,而"/images/"指的就是/www…
1. 选择稳定版还是主线版 主线版:包含最新的功能和bug修复,但该版本可能会含有一些属于实验性的模块,同时可能会有新的bug,所以如果只是做测试使用,可以使用主线版. 稳定版:不包含最新的功能,但修复了严重的bug,建议用在生产环境. 2. 使用预编译安装包还是源码安装包 预编译包:这种是最简单和最快速的安装源码nginx的方式,预编译包几乎包含了所有的官方模块,且大部分的操作系统都能安装. 源码安装:这种方式更灵活,你可以只安装需要的模块,或者第三方模块,或者一些最近发布的安全补丁. 3.…