美文网首页
nginx相关知识总结

nginx相关知识总结

作者: 赵镇 | 来源:发表于2021-06-20 23:23 被阅读0次

    nginx配置属性总结

    全局属性
    worker_processes 1; worker进程数量,通常配置为与cpu核数相同 默认为1
    events属性
    worker_connections 1024;服务器与⽤户的⽹络连接,⽐如worker_connections 1024,标识每个workderprocess⽀持的最⼤连接数为1024
    http属性
    http属性是配置最频繁的部分,虚拟主机的配置,监听端⼝的配置,请求转发、反向代理、负载均衡等,后面配置时再详细讲解

    nginx用法总结

    反向代理

    新增tomcat默认服务并启动。配置如下反向代理,修改http属性下server和location配置为。多个配置可以配置多个location使用9999端口统一代理

      server {
            listen       9999;                               
            server_name  localhost;                          
                                                             
            #charset koi8-r;                                 
                                                             
            #access_log  logs/host.access.log  main;
                                                                               
            location / {                                                       
               proxy_pass http://127.0.0.1:8080;                               
               # root   html;                                                  
               # index  index.html index.htm;                                  
            }        
                
    

    启动的效果为


    file

    负载均衡配置

    首先除了之前原有的配置一个端口为8081且修改原tomcat默认页面Home元素为8081的tomcat并启动

    轮询负载均衡配置

    负载均衡的配置需要在http的模块下统一配置upstream属性,轮询负载均衡的配置

        upstream roundServer {                                                 
                server 127.0.0.1:8080;                                         
                server 127.0.0.1:8081;                                         
                                                                               
         }   
    

    同时在需要配置的路由地址中配置upstream就能实现nginx的负载均衡,例如

           location /round {                                 
    
               proxy_pass httP://roundServer/;               
            } 
    

    随后访问http://119.45.52.68:9999/round 就发现8081和8080两个tomcat的配置交替出现

    权重负载均衡

    默认每个服务的权重是一样的。因此轮询即是一种正常的权重相同的负载均衡
    下面将上述配置改为权重不同的配置

        upstream roundServer {                                                 
                server 127.0.0.1:8080 weight=3;                                
                                                                               
                server 127.0.0.1:8081 weight=1;                                
                                                                               
                
         }  
    

    重新访问http://119.45.52.68:9999/round 可以发现8080默认的页面出现三次8081的页面才出现一次

    ip_hash负载均衡

    每个请求按照ip的hash结果分配,每⼀个客户端的请求会固定分配到同⼀个⽬标服务器处理,可
    以解决session问题

            upstream roundServer {    
                       in_hash;
                server 127.0.0.1:8080;                                         
                server 127.0.0.1:8081;                                         
                                                                               
         }   
        ```
        
        ###  Nginx的动静分离
        由于Nginx很适合用来处理静态资源,所以在实际使用中经常用来直接代理静态资源
        代理静态资源配置
        ```
                location /statichtml/ {                                            
                root staticData                                                
            }  
        ```
        此处代理的即是nginx安装目录下staticData/statichtml/下的静态文件。同样的也可以代理盘符下其他目录的文件。路径配置合理即可
        
        
    
    
    >欢迎关注和点赞,以及总结的分类面试题https://github.com/zhendiao/JavaInterview
    

    相关文章

      网友评论

          本文标题:nginx相关知识总结

          本文链接:https://www.haomeiwen.com/subject/pvjeyltx.html