nginx
文章平均质量分 92
拉里山姆
这个作者很懒,什么都没留下…
展开
-
nginx并发模型与traffic_server并发模型简单比较
http://www.cnblogs.com/liushaodong/archive/2013/02/26/2933535.htmlnginx并发模型: nginx 的进程模型采用的是prefork方式,预先分配的worker子进程数量由配置文件指定,默认为1,不超过1024。master主进程创建监听套接口,fork子进程以后,由worker进程监听客户连接,每个wor转载 2013-11-29 14:10:55 · 1823 阅读 · 0 评论 -
Nginx + chunkin for windows编译指南
折腾了两周,Nginx + chunkin for windows的编译终于完成,记述如下.1, 官方有nginx for windows的编译指南,但是不太详细,而且看来也不太对.2,但是还是可以按着官方的步骤一步步来,然后略加修改.3,按着官方指南,下载各种必要的第三方软件和chunkin模块不提.注意,这里只要源代码即可.我这里都是手动下载解压,而不是像官方指南说的那样,去msy转载 2012-07-16 22:13:50 · 1261 阅读 · 3 评论 -
Nginx源码分析-4个重要结构之间的关系
http://blog.csdn.net/marcky/article/details/6085241转载申明:本文可以任意转载,但需注明原文地址,谢谢! Nginx源码之中有着很多很多的结构,当然每一个结构都是非常重要的,本文将分析其中的4个结构之间的关系。这4个结构分别是:listening、connection、event以及request。下面用一个图形来展现他转载 2012-05-18 17:22:21 · 577 阅读 · 0 评论 -
nginx:expires控制页面缓存以及加头
http://blog.sina.com.cn/s/blog_5dc960cd0100hxr7.htmlexpires 指令可以控制 HTTP 应答中的“ Expires ”和“ Cache-Control ”的头标(起到控制页面缓存的作用)语法:expires [time|epoch|max|pff]默认值:offexpires指令控制HTTP应答中的“Expir转载 2012-05-16 14:28:30 · 1090 阅读 · 0 评论 -
nginx的超时处理
http://lenky.info/tag/nginx/page/3/这一系列的文章还是在09年写的,存在电脑里很久了,现在贴出来。顺序也不记得了,看到那个就发那个吧,最近都会发上来。欢迎转载,但请保留链接:http://lenky.info/,谢谢。nginx对于是否存在有超时事件的处理很巧妙。首先,nginx利用红黑树来组织那些等待处理的并且需要关注其是否超时的事件对象(以下称转载 2012-05-16 13:01:42 · 828 阅读 · 0 评论 -
nginx的执行模型
http://lenky.info/2011/09/10/nginx%E7%9A%84%E6%89%A7%E8%A1%8C%E6%A8%A1%E5%9E%8B/这一系列的文章还是在09年写的,存在电脑里很久了,现在贴出来。顺序也不记得了,看到那个就发那个吧,最近都会发上来。欢迎转载,但请保留链接:http://lenky.info/,谢谢。Nginx的进程模型和大多数同类服务程序一转载 2012-05-16 13:00:37 · 549 阅读 · 0 评论 -
nginx配置信息的解析流程
http://lenky.info/2011/09/09/nginx%E9%85%8D%E7%BD%AE%E4%BF%A1%E6%81%AF%E7%9A%84%E8%A7%A3%E6%9E%90%E6%B5%81%E7%A8%8B-3/这一系列的文章还是在09年写的,存在电脑里很久了,现在贴出来。顺序也不记得了,看到那个就发那个吧,最近都会发上来。欢迎转载,但请保留链接:http://转载 2012-05-16 12:59:49 · 2297 阅读 · 0 评论 -
Nginx源码分析-进程管理之master进程
http://blog.csdn.net/marcky/article/details/6001865转载申明:本文可以任意转载,但需注明原文地址,谢谢! Nginx分为Single和Master两种进程模型,Single模型即为单进程方式工作,具有较差的容错能力,不适合生产之用。Master模型即为一个master进程+N个worker进程的工作方式。生产环境都是用m转载 2012-05-15 16:28:53 · 878 阅读 · 0 评论 -
Nginx源码分析-启动初始化过程(二)
http://blog.csdn.net/marcky/article/details/5993471转载申明:本文可以任意转载,但需注明原文地址,谢谢! 在Nginx启动初始化过程(一)中提到main函数会调用ngx_init_cycle()初始化一个全局cycle变量,本文就来看看这个ngx_init_cycle()函数究竟做了哪些初始化工作。ngx_cycle_t转载 2012-05-15 16:23:32 · 382 阅读 · 0 评论 -
Nginx源码分析-启动初始化过程(一)
http://blog.csdn.net/marcky/article/details/5987762转载申明:本文可以任意转载,但需注明原文地址,谢谢! Nginx的启动初始化在src/core/nginx.c的main函数中完成,当然main函数是整个Nginx的入口,除了完成启动初始化任务以外,也必定是所有功能模块的入口之处。Nginx的初始化工作主要围绕一个类型转载 2012-05-15 16:20:37 · 389 阅读 · 0 评论 -
nginx源码分析—信号初始化
作者:阿波链接:http://blog.csdn.net/livelylittlefish/article/details/7308100Content0.序1. ngx_init_signals()函数1.1 ngx_signal_t结构1.2 signals数组1.3 sigaction结构2.几个问题2.1ngx_signa转载 2012-05-15 15:56:49 · 492 阅读 · 0 评论 -
Ngx_connection_s 结构体分析报告
一、Ngx_connection_s结构体struct ngx_connection_s { void *data;//数据指针 ngx_event_t *read;//事件读操作 ngx_event_t *write;//事件写操作 ngx_socket_t fd;//用于soc转载 2012-08-09 10:41:36 · 1672 阅读 · 0 评论 -
nginx 子进程调度
在linux 下,nginx默认是采用多进程模型的,其中一个是父进程,其他都是子进程,父进程主要做一些全局初始化、调度等工作,而真正的处理时在子进程中完成的,那么当一个请求过来的时候,到底有那个进程去服务呢? 我看了代码,还是没有找到答案,后来在网上发现了这篇文章Nginx0.7.61代码分析(二)--worker子进程之间的负载均衡>>,终于揭开了我心中的疑问。系统根据没有进程转载 2012-08-09 10:51:26 · 764 阅读 · 0 评论 -
nginx 整体结构
http://blog.csdn.net/benbendy1984/article/details/6003779 零零碎碎的看了nginx的源码,自己感觉还是比较的乱,所以花点时间把它的整体结构给理下, 一 模块的结构(ngx_module_t) [cpp]转载 2012-08-09 10:52:58 · 544 阅读 · 0 评论 -
nginx进程模型
http://www.cnblogs.com/liushaodong/archive/2013/02/26/2933511.html1.概述 nginx有两类进程,一类称为master进程(相当于管理进程),另一类称为worker进程(实际工作进程)。启动方式有两种:(1)单进程启动:此时系统中仅有一个进程,该进程既充当master进程的角色,也充当wo转载 2013-11-29 14:12:09 · 1035 阅读 · 0 评论 -
修改linux tcp连接数
http://blog.csdn.net/zdwzzu2006/article/details/7713622一、 文件数限制修改(1) vi /etc/security/limits.conf* soft nofile 10240* hard nofile 10240(2) vi /etc/pam.d/loginsession required /lib/转载 2013-10-25 17:27:05 · 851 阅读 · 0 评论 -
Nginx 服务并发过10万的Linux内核优化配置
http://www.linuxidc.com/Linux/2012-11/75151.htm以下Linux 系统内核优化配置均经在线业务系统测试,服务器运行状态良好,用了一些时间整理,现和大家分享一下,如有那位高人看到配置上有问题,请给与指出!# Controls the use of TCP syncookies#表示开启重用。允许将TIME-WAIT socket转载 2013-10-25 17:25:53 · 2548 阅读 · 0 评论 -
nginx中CPU亲和性源码解读
http://blog.csdn.net/seekerzhou/article/details/81350001. CPU亲和性1.1 CPU亲和性介绍简单地说,CPU亲和性(affinity)就是进程要在某个给定的 CPU上尽量长时间地运行而不被迁移到其他处理器的倾向性。Linux 内核进程调度器天生就具有被称为软 CPU 亲和性(affinity)的转载 2013-07-23 16:17:15 · 1339 阅读 · 0 评论 -
Nginx优化(配置文件&内核参数)Nginx optimization (Profile & Kernel parameters)
http://www.huanxiangwu.com/699/nginx-optimizationnginx指令中的优化(配置文件)worker_processes 8;nginx进程数,建议按照cpu数目来指定,一般为它的倍数。worker_cpu_affinity 00000001 00000010 00000100 00001000 00010000 0010转载 2013-02-19 10:57:02 · 685 阅读 · 0 评论 -
Nginx模块开发入门
http://www.codinglabs.org/html/intro-of-nginx-module-development.html前言Nginx是当前最流行的HTTP Server之一,根据W3Techs的统计,目前世界排名(根据Alexa)前100万的网站中,Nginx的占有率为6.8%。与Apache相比,Nginx在高并发情况下具有巨大的性能优势。Ng转载 2013-01-05 22:23:56 · 601 阅读 · 0 评论 -
nginx状态监控
Nginx中的stub_status模块主要用于查看Nginx的一些状态信息. 本模块默认是不会编译进Nginx的,如果你要使用该模块,则要在编译安装Nginx时指定:./configure –with-http_stub_status_module 查看已安装的 Nginx 是否包含 stub_status 模块转载 2012-09-13 12:03:00 · 546 阅读 · 0 评论 -
nginx 处理accept
http://blog.csdn.net/benbendy1984/article/details/6011968accept过程实现在 ngx_event_accept.c中的ngx_event_accept函数中,主要过程如下: 一 accept() 二 从连接池中取得一个连接转载 2012-08-09 13:53:36 · 554 阅读 · 0 评论 -
nginx的启动流程分析(二)
原创文章,转载请注明: 转载自pagefault本文链接地址: nginx的启动流程分析(二)接上篇,这篇主要来看nginx的网络部分的初始化首先是ngx_http_optimize_servers函数,这个函数是在ngx_http_block中被调用的,它的主要功能就是创建listening结构,然后初始化。这里ngx_listening_t表示一个正在监听的句柄以及转载 2012-08-09 11:47:47 · 1548 阅读 · 0 评论 -
nginx的启动流程分析(一)
原创文章,转载请注明: 转载自pagefault本文链接地址: nginx的启动流程分析(一)这篇我们会主要来分析配置文件相关的一些初始化,而在下一篇我们会详细分析http协议相关,以及socket的初始化信息。nginx启动最重要的部分是在ngx_init_cycle中,我们接下来就会详细的分析这个函数,以及相关的函数.下面就是ngx_init_cycle的流转载 2012-08-09 11:07:24 · 832 阅读 · 0 评论 -
nginx源码分析—处理继承的sockets
作者:阿波链接:http://blog.csdn.net/livelylittlefish/article/details/7277607Content0.序1.侦听结构2. ngx_add_inherited_sockets()分析3. ngx_set_inherited_sockets()分析4.小结 0.序转载 2012-05-15 15:56:01 · 811 阅读 · 0 评论 -
nginx源码分析—全局变量ngx_cycle的初始化
作者:阿波链接:http://blog.csdn.net/livelylittlefish/article/details/7247080Content0.序1. ngx_cycle_t结构2. ngx_init_cycle()分析3.注意问题3.1如何调用CORE模块的callback函数?3.2 open_files链表中的文件名转载 2012-05-15 15:54:49 · 578 阅读 · 0 评论 -
nginx源码分析—模块及其初始化
本博客(http://blog.csdn.net/livelylittlefish)贴出作者(阿波)相关研究、学习内容所做的笔记,欢迎广大朋友指正!Content0. 序1. nginx有哪些模块?2. nginx如何描述这些模块?2.1 模块数据结构2.1.1 ngx_module_t结构2.1.2 ngx_command_t结构2转载 2012-05-15 14:25:44 · 479 阅读 · 0 评论 -
nginx源码分析—内存池结构ngx_pool_t及内存管理
本博客(http://blog.csdn.net/livelylittlefish)贴出作者(阿波)相关研究、学习内容所做的笔记,欢迎广大朋友指正!Content0. 序1. 内存池结构1.1 ngx_pool_t结构1.2 其他相关结构1.3 ngx_pool_t的逻辑结构2. 内存池操作2.1 创建内存池2.2转载 2012-05-15 14:01:56 · 481 阅读 · 0 评论 -
Nginx正向代理(透明代理)配置
其实这些事squid都可以做,而且比nginx做得更好,缺点就是squid对多核一直支持不好,大并发大连接下可能效果不理想,所以利用nginx试试。#用户 [用户组]user root;#启动进程,一般和CPU数量一致worker_processes 1;#[ debug | info | notice | warn | error转载 2012-03-16 11:50:36 · 3583 阅读 · 0 评论 -
实现了一个比nginx速度更快的HTTP服务器
首先承认这个标题标题党了:)。在上次的FreeBSD和linux的nginx静态文件性能对比测试 后,我萌发了自己动手做一个简单的Web Server来搞清楚nginx高性能背后的原理的想法。最后成功实现了一个基于epoll的简单的HTTP服务器,实现了200,404,400,304响应,并且性能比nginx高了一点点。本文主要介绍这个HTTP服务器的原理和设计过程。阅读了一些文章转载 2012-03-13 23:42:36 · 547 阅读 · 0 评论 -
nginx搭建flv流媒体服务器
nginx搭建flv流媒体服务器FLV视频发布方式简介FLV视频有两总发布方式HTTP方式这种方式要下载FLV视频文件到本地播放,一旦FLV视频文件下载完成,就不会消耗服务器的资源和带宽,但是拖动功能没有RTMP/RTMP流媒体方式强大,很多视频网站都是用HTTP方式实现的,如:YouTube,土豆,酷6等RTMP/RTMP流媒体方式这种方式转载 2012-03-28 11:27:48 · 902 阅读 · 0 评论 -
nginx的upstream目前支持的几种分配(调度,分派)方式
http://xok.la/2009/05/nginx_upstream_diaodu_fenpai.html1、轮询(默认)每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。2、weight指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。例如:upstream bakend {serv转载 2012-03-26 23:46:54 · 497 阅读 · 0 评论 -
debug Nginx,调试Nginx
http://xok.la/2009/05/nginx_with_debug.htmlYou need to build nginx with the option: –with-debug.需要重新编译nginx,并加上–with-debugThen in nginx.conf, you should writeerror_log logs/erro转载 2012-03-26 23:45:57 · 1096 阅读 · 0 评论 -
nginx的cache_purge模块及支持squidclient刷新的配置
nginx proxy_cache是一个类似squid的完整的缓存解决方案,它是0.7.44版本之后加入的功能,发展了比较长时间,想必也能稳定下来了。在没有proxy_cache之前只能用proxy_store缓存页面,因为nginx并没有为proxy_store设计任何刷新机制,所以要用的话还得加入外部设计的刷新功能,比如shell啊php等等,使用proxy_cache就会方便一些。一转载 2012-02-23 09:34:11 · 832 阅读 · 0 评论 -
Etag和Expires
摘要1、Etag和Expires中Client 端Http Request Header及Server端Http Reponse Header工作原理。2、静态下Apache、Lighttpd和Nginx中Etag和Expires配置3、非实时交互动态页面中Etag和Expires处理在客户端通过浏览器发出第一次请求某一个URL时,根据 HTTP 协议的规定,浏览器会向服务器传转载 2012-02-14 13:00:38 · 864 阅读 · 0 评论 -
nginx:expires控制页面缓存
expires 指令可以控制 HTTP 应答中的“ Expires ”和“ Cache-Control ”的头标(起到控制页面缓存的作用)语法:expires [time|epoch|max|pff]默认值:offexpires指令控制HTTP应答中的“Expires”和“Cache-Control”Header头部信息,启动控制页面缓存的作用time:可以使用正数或负转载 2012-02-14 12:59:20 · 1301 阅读 · 0 评论 -
nginx源码分析—数组结构ngx_array_t
本博客(http://blog.csdn.net/livelylittlefish )贴出作者(阿波)相关研究、学习内容所做的笔记,欢迎广大朋友指正!Content0. 序1. 数组结构1.1 ngx_array_t结构1.2 ngx_array_t的逻辑结构2. 数组操作2.1 创建数组2.2 销毁数组2.3 添加1个元转载 2012-05-10 23:45:50 · 498 阅读 · 0 评论 -
nginx源码分析—链表结构ngx_list_t
本博客(http://blog.csdn.net/livelylittlefish )贴出作者(阿波)相关研究、学习内容所做的笔记,欢迎广大朋友指正!Content1.链表结构1.2 ngx_list_t的逻辑结构2.1创建链表3.一个例子3.2如何编译4.小结0. 序 本文继续介绍ng转载 2012-05-15 15:07:58 · 488 阅读 · 0 评论 -
nginx源码分析—core模块callback
作者:阿波链接:http://blog.csdn.net/livelylittlefish/article/details/7262750Content0. 序1. Core模块的配置结构2. create_conf分析3. init_conf分析4. 小结0. 序在源码分析—全局变量ngx_cycle的初始化>中,简单介绍了如何调用core模块转载 2012-05-15 15:55:24 · 609 阅读 · 0 评论 -
nginx源码分析—启动流程
作者:阿波本文链接:http://blog.csdn.net/livelylittlefish/article/details/7243718Content0. 序1. main()分析2. 注意问题2.1 几个初值2.2 nginx工作模式2.3 一些配置2.4 其他开关3. 小结0. 序本文主要分析nginx主程序。转载 2012-05-15 15:48:48 · 527 阅读 · 0 评论