zoukankan      html  css  js  c++  java
  • Linux操作篇之LNMP(二)

    一、apache与nginx工作模式区别。

      在apache中,默认的工作模式为同步阻塞;而nginx的默认工作模式为异步非阻塞。其中同步与异步;阻塞与非阻塞组成了四种工作模式。

    举例:1、同步阻塞模式:小明收到了快递快要到达的信息,去快递收货点等快递(等待期间什么也不做,只是等快递一件事)。

       2、同步非阻塞模式:小明收到了快递快要到达的信息,去快递收货点等快递。(等待期间在玩游戏或者在上网)。

       3、异步阻塞模式:小明收到了快递快要到达的信息,在家等着快递员给小明发消息(等待期间什么也不做,只是等快递员消息一件事)。

       4、异步非阻塞模式:小明收到了快递快要到达的信息,在家等着快递员给小明发消息(等待期间在玩游戏或者在上网)。

    上面可以看出,apache(同步阻塞模式)的工作效率最低,并不适合高并发的访问量,而nginx(异步非阻塞模式)则可以轻松处理百万并发量的连接。

    二、epoll模型(多路复用模型)

      nginx配置use epoll 后,以异步非阻塞模式工作,而epoll模型可以理解为楼下的传达室。快递送到传达室中,并通知来取快递,其他人的快递也在传达室中,谁有空谁来取,都通知了但没人来取的时候,保安老大爷就休息了。小明有空来取了,保安老大爷就根据快递信息单给小明拿快递

    三、nginx工作原理。

     

     nginx工作模式有两种,一个是master-work模式和单进程模式,大多数使用的master-work模式,少数测试开发阶段使用单进程模式。

    在master-work模式下,会启动一个守护进程(master)和至少一个子进程(work)。

    master主要是加载系统配置,处理系统信号,管理work进程(启动、结束、监控等)。

    work进程主要处理具体的业务逻辑,对外部来说,是真正处理请求的服务

    优点:高稳定性,只要还有work进程在运行,就可以对外提供服务。当一个work进程中断时,master进程会及时启动一个新的work进程。

       高性能,可以充分利用CPU的多核这一特性。

       高可用,在进行配置更改、升级的时候,可以做到不中断服务的热重启。

    三、解读配置文件

    1、主配置文件(/usr/local/nginx/conf)
    user  nginx nginx;      程序运行的用户、用户组


    worker_processes  1;          启动工作进程的数量,一般按照CPU核心数设置。


    #error_log  logs/error.log;   错误日志存放位置,后面的是记录类型
    #error_log  logs/error.log  notice;
    #error_log  logs/error.log  info;

    #pid        logs/nginx.pid;      主进程PID文件存放位置


    events {
                                      使用的工作模型,(默认情况下为epoll模型)
        worker_connections  1024;  工作进程的最大连接数量(最大可处理并发量=最大连接数量X进程数量)
    }


    http {                              优化网站参数
        include       mime.types;
        default_type  application/octet-stream;
        #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
        #                  '$status $body_bytes_sent "$http_referer" '
        #                  '"$http_user_agent" "$http_x_forwarded_for"';

        #access_log  logs/access.log  main;    访问日志记录位置及类型

        sendfile        on;            启动高效文件传输模式
        #tcp_nopush     on;        避免网络阻塞,与tcp_nodelay两者选一,后者为有数据时,尽快传输,提高传输效率。

        #keepalive_timeout  0;
        keepalive_timeout  65;      每个TCP连接最多保持多长时间,时间过长会影响性能,设置为0,表示不保持TCP连接。

        #gzip  on;                    启用文件压缩,可提高网站传输速度,减少响应时间。

        server {                     一个server代表一个网站的配置信息,当有多个server的时候,就可以对比apache中的虚拟主机,一个server对应一个虚拟主机
            listen       80;         监听端口    
            server_name  localhost;  服务器域名

            #charset koi8-r;

            #access_log  logs/host.access.log  main;

            location / {
                root   html;        网站的根目录(此配置中,实际的地址为/usr/local/nginx/html)
                index  index.html index.htm index.php;    默认加载的首页(有先后顺序,排在前面的优先,没有找到前一个再寻找下一个)
            }

            #error_page  404              /404.html;

            # redirect server error pages to the static page /50x.html
            #
            error_page   500 502 503 504  /50x.html;
            location = /50x.html {
                root   html;
            }

            # proxy the PHP scripts to Apache listening on 127.0.0.1:80
            #
            #location ~ .php$ {
            #    proxy_pass   http://127.0.0.1;
            #}

            # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
            #
            location ~ .php$ {
                root           html;
                fastcgi_pass   127.0.0.1:9000;
                fastcgi_index  index.php;
                fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
                include        fastcgi.conf;
            }

            # deny access to .htaccess files, if Apache's document root
            # concurs with nginx's one
            #
            #location ~ /.ht {
            #    deny  all;
            #}
        }
        server{
        虚拟主机
        }
    }

    本人小白一个^^ QQ:641055499,欢迎骚扰!
  • 相关阅读:
    Redis学习笔记——环境搭建
    SQL 记录
    路径“D:svn.....”的访问被拒绝问题处理
    去除浏览器自动给input赋值的问题
    获取用户IP
    JS对身份证号码进行验证方法
    JS 实现倒计时
    SQL 游标
    .net上传图片实例
    生成唯一码
  • 原文地址:https://www.cnblogs.com/641055499-mozai/p/15415665.html
Copyright © 2011-2022 走看看