摘要:
转自:http://blog.csdn.net/hguisu/article/details/8930668Nginx由内核和模块组成,其中,内核的设计非常微小和简洁,完成的工作也非常简单,仅仅通过查找配置文件将客户端请求映射到一个location block(location是Nginx配置中的一个指令,用于URL匹配),而在这个location中所配置的每个指令将会启动不同的模块去完成相应的工作。Nginx的模块从结构上分为核心模块、基础模块和第三方模块:核心模块:HTTP模块、EVENT模块和MAIL模块基础模块:HTTP Access模块、HTTP FastCGI模块、HTTP Pro 阅读全文
摘要:
转自:http://www.tuicool.com/articles/AzmiY3关于select与epoll两种IO模型,都属于多路IO就绪通知,提供了对大量文件描述符就绪检查的高性能方案,只不过实现方式有所不同:select:一个select()系统调用来监视包含多个文件描述符的数组,当select返回,该数组中就绪的文件描述符便会被内核修改标志位。select的跨平台做的很好,几乎每个平台都支持。select缺点有以下三点:单个进程能够监视的文件描述符的数量存在最大限制select()所维护的存储大量文件描述符的数据结构,随着文件描述符数量的增长,其在用户态和内核的地址空间的复制所引发的 阅读全文
摘要:
转自:http://blog.csdn.net/chosen0ne/article/details/8200737 linux性能监控,就是要监控系统的各个子系统是否正常。linux主要的子系统包括:CPU、Memory、IO和Network,它们之间相互依赖,一个出问题可能会影响其他的。比如:网卡流量很大会导致更多的CPU开销,因为频繁的响应中断执行协议栈。 性能监控时,首先要确定应用的类型,然后对症下药,可以将应用分成: CPU密集型:CPU开销很高,比如大量的CPU运算、科学计算等。通常web server属于这类。 IO密集型:大量的磁盘读写,高负荷的内存使用。IO密... 阅读全文