Nginx源码学习与思考 一

  

  

  从今天开始,请跟随我一块来学习Nginx源码吧,我相信这将是一段快乐并痛苦的过程,但是你我都将获取属于自己的快乐的。我学习的对象主要是两个:Nginx源码,深入理解Nginx,后者作为参考书,这本书写的很用心,建议大家可以去看看,我是看过一遍的。现在主要是把心得写出,同时在最后,我会用前面理解的知识做一个真实可用的项目来,尽力做到1.2wQPS,在一台4核8G的i5的服务器上。整个程序的处理时间尽量保证在100ms内有返回。

  那我们就开始一段愉快的旅程吧。

初识Nginx

   一句话来说Nginx:它是基于事件驱动的架构并能够并发处理百万级的TCP接连(请求)的web服务器;正如作者所说:“选择Nginx的核心理由就一个:能支持高并发请求的同时保持高效的服务”。

准备工作

  环境要求有如下几点:

  1. linux内核 version最好在2.6及以上,这样才能使用epoll功能,用uname -a;

  2. nginx安装必备软件环境;

      2.1 gcc: apt-get install gcc;apt-get install gcc-c++

    2.2 pcre: apt-get install pcre

    2.3 zlib: apt-get install zlib

      2.4 openssl: apt-get install openssl

  3. linux内核参数优化:请按照自己的需求来设备;内核参数文件 /etc/sysctl.conf, 生效 sysctl -p.

Nginx 安装

  ./configure --prefix=/home/xiawenxing/nginx \  //nginx所在目录

                           --with-pcre=/home/xavierxia/package/pcre-8.35 \ //添加正则

                           --with-http_ssl_module \ 

                           --with-http_stub_status_module \ //统计nginx运行信息

                           --with-debug \     //用于调试(生产环境去掉)

                           --add-module=/home/xiawenxing/rtb-c //c项目

  make -j2

  make install

 

posted on 2015-06-23 15:47  追月之羽  阅读(217)  评论(0)    收藏  举报

导航