Nginx 其实就是一款轻量级的 Web 服务器、反向代理服务器,由于它的内存占用少,启动极快,高并发能力强,在互联网项目中广泛应用。

那么你可能会问了:“不是说 Nginx 吗?怎么又扯出来一个 Web 服务器呢?啥是服务器?”。别着急,在学习 Nginx 之前你还真得知道什么是服务器这个概念,下面我们先来看下到底啥是服务器。

啥是服务器

WEB服务器

我们上面唠叨了一下什么是服务器。下面我们说一下啥是 Web 服务器,在上面我们也说了 Nginx 其实就是一个 轻量级的 Web 服务器,那么什么是 Web 服务器呢?我们平时可以打开浏览器访问微博的网站,获取各种娱乐圈各种劲爆消息。这个看似简单的行为,背后有隐藏了那些细节呢?

哈哈,当然了,一个成熟的 Web 服务器肯定还有其他各种各样的功能,但是原理都是一样。所以,一定要淡定,学会 Web 服务器并没有想象中的那么困难。

WEB服务器的分类

其实,现在的市面上面有很多类似于 Nginx 的 Web 服务器,如下图:

 几款服务器比较

从这两张图中可以看到,Nginx 开发者数量已经明显的超过了其他 Web Server 开发者数量,独占鳌头。在 Web Server 市场使用率中,Nginx 的占有率一直在稳步的上升,超过了 IIS,与 Apache 的差距越来越小。所以,使用和学习 Nginx 已经成为每一个后端工程师必备的技能了。好了,铺垫了这么多,下面我们正式来看下 Nginx 倒底是个什么东西。

Nginx简介

Nginx是由战斗民族的一位名叫 Igor Sysoev 的程序猿开发的,开源、高性能的 HTTP 服务器和反向代理服务器,也可以作为一个 IMAP/POP3 代理服务器。也就是说,Nginx不仅可以托管网站,进行HTTP服务处理,还可以作为反向代理服务器。Nginx 出现的初衷是为了解决著名的 C10K 问题而出现的。和传统的 Web Server 不一样,Nginx 使用了异步事件处理机制架构。这种架构可以轻松高效地处理大量的请求,并且非常的节省内存。高性能是Nginx最大的优点。

啥?不知道什么是C10K问题,我严重怀疑你是从外星球来的,来,看这里。不知道什么是异步事件处理机制?没关系,我会在后面的小节中分析的,包学会。

为什么选择Nginx

如果没有亲身体验过这种痛苦,你是无法理解的这是多么痛的领悟。

Nginx能干啥

百度网盘面试题资源分享链接:https://pan.baidu.com/s/1XDWqO3iUK2ZC1Uo1PBwFfg

提取码:urtq

整理了一些资料,包括但不限于:分布式架构、高可扩展、高性能、高并发、服务器性能调优、TP6,laravel,YII2,Redis,Swoole、Swoft、Kafka、Mysql优化、shell脚本、Docker、微服务、Nginx等多个知识点高级进阶干货获取点击链接加入群聊【swoole学习2群】:

正在跳转

几个点认识Nginx服务器的更多相关文章

  1. Nginx 服务器 之Nginx与tomcat实现负载均衡

      本文讲解我们如何使用Nginx做反向带服务器,实现nginx与tomcat服务器集群做负载均衡. 一.nginx与tomcat实现负载均衡 1.在/usr/local/ngnix/conf  创建 ...

  2. Nginx服务器 之反向代理与负载均衡

    一.反向代理 正向代理: 客户端要获取的资源就在服务器上,客户端请求的资源路径就是最终响应资源的服务器路径,这就是正向代理.正向代理的特点:就是我们明确知道要访问哪个网站地址. 反向代理: 客户端想获 ...

  3. 把域名绑定到某个项目,以nginx服务器为例

    一:登陆域名服务器平台,把域名解析到项目对应的IP上面. 二:配置nginx服务器 1./etc/nginx/conf.d/ 在服务器该目录下,添加.conf文件,如命名为:www.demo.com. ...

  4. 在阿里云服务器(ECS)上从零开始搭建nginx服务器

    本文介绍了如何在阿里云服务器上从零开始搭建nginx服务器.阿里云服务器(ECS)相信大家都不陌生,感兴趣的同学可以到http://www.aliyun.com/product/ecs去购买,或到体验 ...

  5. nginx入门篇----nginx服务器基础配置

    1.nginx.conf文件结构...                         #全局块  events{  ...  }  http                      #http块{ ...

  6. --with-http_realip_module选项(后台Nginx服务器记录原始客户端的IP地址 )

    转自:http://blog.itpub.net/27043155/viewspace-734234/ 通过这个模块允许我们改变客户端请求头中客户端IP地址值(例如,X-Real-IP 或 X-For ...

  7. 【转】Nginx服务器的反向代理proxy_pass配置方法讲解

    [转]Nginx服务器的反向代理proxy_pass配置方法讲解 转自:http://www.jb51.net/article/78746.htm 就普通的反向代理来讲Nginx的配置还是比较简单的, ...

  8. Linux下安装Nginx服务器

    安装Nginx之前,首先要安装好编译环境gcc和g++,然后以CentOS为例安装Nginx,安装Nginx需要PRCE库.zlib库和ssl的支持,除了ssl外其他的我们都是去官网下载: Nginx ...

  9. nginx服务器设置url的优雅链接

    对于LNMP这样架构的网站来说,一般都是基于php框架开发,php框架一般都会讲究优雅链接,比如Laravel,CodeIgniter,ThinkPHP等都是支持这种链接模式的,在服务器配置上也叫作u ...

  10. nginx服务器绑定域名和设置根目录的方法

    nginx服务器绑定域名以及设置根目录非常方便,首先进入nginx安装目录,然后执行 vim conf/nginx.conf 打开nginx的配置文件,找到 server { ..... ..... ...

随机推荐

  1. js复制变量值

    来源:JavaScript高级程序设计(第3版)69页. 例如 : var a=1;   var b = a  ;      这里就是把a的值复制给变量  b   了. 但是 复制的变量值  分为  ...

  2. 在Winform界面使用自定义用户控件及TabelPanel和StackPanel布局控件

    在很多时候,我们做一些非常规化的界面的时候,往往需要创建一些用户控件,在其中绘制好一些基础的界面块,作为后续重复使用的一个单元,用户控件同时也可以封装处理一些简单的逻辑.在开发Winform各种类型项 ...

  3. 在ubuntu 18上安装MongoDB

    本文介绍 MongoDB Community Edition 在 Ubuntu 下的安装和常见配置方法.文中操作基于 MongoDB Community Edition 4.2.2 和 Ubuntu ...

  4. Spring-cloud微服务实战【二】:eureka注册中心(上)

    ## 前言   本系列教程旨在为大家演示如何一步一步构建一整套微服务系统,至于其中的数据库用什么,订单ID如何保持唯一,分布式相关问题等等不在我们讨论范围内,本教程为了方便大家后续下载代码运行测试,不 ...

  5. Linux查看端口监听占用

    # 查看所有 netstat -ntlp # 过滤PORT8080 netstat -ntlp | grep 8080 -t # 仅显示tcp相关选项 -u # 仅显示udp相关选项 -n # 拒绝显 ...

  6. 轻松理解 Kubernetes 的核心概念

    Kubernetes 迅速成为云环境中软件部署和管理的新标准. 与强大的功能相对应的是陡峭的学习曲线. 本文将提供 Kubernetes 的简化视图,从高处观察其中的重要组件,以及他们的关联. 硬件 ...

  7. 运用路由约束 使用属性路由 精通ASP-NET-MVC-5-弗瑞曼

  8. 创建dynamics CRM client-side (十一) - 管理和关联所有的JS文件

    代码管理是一个无法避免的问题. 前面我也建议了大家每一个entity都应该拥有自身的js. 但是如果我们有一些global的function, 我们应该怎样去部署到每一个entity中呢? 我这里使用 ...

  9. Shell常用命令之ip

    前言 linux的ip命令和ifconfig类似,但前者功能更强大,并旨在取代后者.使用ip命令,只需一个命令,你就能很轻松地执行一些网络管理任务.ifconfig是net-tools中已被废弃使用的 ...

  10. SpringBoot安全篇Ⅵ --- 整合Spring Security

    知识储备: 关于SpringSecurity的详细学习可以查看SpringSecurity的官方文档. Spring Security概览 应用程序的两个主要区域是"认证"和&qu ...