前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布

nginx

作者头像
名字是乱打的
发布2022-05-13 08:52:43
3590
发布2022-05-13 08:52:43
举报
文章被收录于专栏:软件工程

1.什么是nginx,nginx?

  • Nginx是一个高性能的Web和反向代理服务器,它具有有很多非常优越的特性:作为Web服务器:相比Apache,Nginx使用更少的资源,支持更多的并发连接,体现更高的效率,这点使Nginx尤其受到虚拟主机提供商的欢迎。能够支持高达50000个并发连接费的响应,感谢Nginx为我们选择了epoll and kqueue作为开发模型.
  • 作为负载均衡服务器:Nginx既可以在内部直接支持Rails和PHP,也可以支持作为HTTP代理服务器对外进行服务。Nginx用C编写,不论是系统资源开销还是CPU使用效率都比Perlbal要好的多
  • 作为邮件代理服务器:Nginx同时也是一个非常优秀的邮件代理服务器(最早开发这个产品的目的之一也是作为邮件代理服务器),Last.fm描述了成功并且美妙的使用经验。

优点 Nginx安装非常的简单,配置文件非常简洁(还能够支持per语法),Bugs非常少的服务器:Nginx启动特别容易,并且几乎可以做到7*24不间断运行,即使运行数个月也不需要重新启动。你还能够在不间断服务的情况下进行软件版本的升级。

nginx可以作为web服务器,但更多的时候,我们把它作为网关 为啥?因为网关有的功能,它都可以做到,如下....而且优点上面都介绍清楚了.

  • 反向代理
  • 负载均衡
  • 动态路由
  • 请求过滤
2. web服务器类别
  • web应用服务器 (可以解析jsp和静态html css js等 )并发能力低
    • jetty
    • resin
    • tomcat (200并发)
  • web服务器 不能解析jsp但是并发能力高
    • apache服务器
    • nginx(目前最流行,可以达到5W并发)
    • IIS(微软的,功能挺多的,在window server服务器上比较流行(内置IIS,天然集成,占用80端口))
3. 代理与反向代理
4.nginx的负载均衡

Nginx提供的负载均衡策略有2种:内置策略和扩展策略。 内置策略为轮询,加权轮询,Ip hash。 扩展策略,就天马行空,只有你想不到的没有他做不到的啦,你可以参照所有的负载均衡算法,给他一一找出来做下实现。

上3个图,理解这三种负载均衡算法的实现

Ip hash算法,对客户端请求的ip进行hash操作,然后根据hash结果将同一个客户端ip的请求分发给同一台服务器进行处理,可以解决session不共享的问题。

4.nginx如何当做反向代理服务器来使用?
  • 我们需要提前在nginx中配置好反向代理的规则,不同的请求,交给不同的真实服务器处理
  • 当请求到达nginx,nginx会根据已经定义的规则进行请求的转发,从而实现路由功能

及其适合微服务项目,大量端口需要路由

5.nginx下载

参考https://www.cnblogs.com/xxoome/p/5866475.html 下载解压好了,这里看以下nginx里有啥玩意

  • conf毫无疑问是配置目录
  • contrib是依赖
  • html默认静态页面

首先进入conf配置咱们的nginx

vi进入后编辑,这里以注释的方式解读一下配置

代码语言:javascript
复制
#user  nobody;
worker_processes  1; //工作进程数(处理请求的进程)(通常不大于服务器核数)

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


events {
    worker_connections  1024;//工作连接数-线程数
}


http { //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;

    #keepalive_timeout  0;
    keepalive_timeout  65;//连接最大时间

    #gzip  on;

    server {//一个server就是一个代理
        listen       80;//监听的服务端口
        server_name  localhost;//这个主机的都默认转到80端口

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            root   html;
            index  index.html index.htm;
        }

        #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_params;
        #}

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

参考:👇👇👇👇

菜鸟教程Nginx nginx中文文档 Nginx 配置文件详解 运行和控制Nginx nginx域名配置 前端项目发布到nginxweb服务器

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-05-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 2. web服务器类别
  • 3. 代理与反向代理
  • 4.nginx的负载均衡
  • 4.nginx如何当做反向代理服务器来使用?
  • 5.nginx下载
  • 参考:👇👇👇👇
相关产品与服务
负载均衡
负载均衡(Cloud Load Balancer,CLB)提供安全快捷的流量分发服务,访问流量经由 CLB 可以自动分配到云中的多台后端服务器上,扩展系统的服务能力并消除单点故障。负载均衡支持亿级连接和千万级并发,可轻松应对大流量访问,满足业务需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档