我们今天开始对Nginx的学习,本来是打算第一篇就是基础知识介绍的,但是我感觉在学习一个新知识之前总应该知道,我们为什么要学习它,学习它的意义何在吧!所以我加了背景这一篇作为Nginx开始学习的标志。

1、Nginx的诞生

我们在了解Nginx之前,首先要了解一下当今最为主流的服务器Apache。距离Apache的诞生和发展许久,现在Apache是毫无争议的世界第一大服务器,它有着:稳定、开源、跨平台等等很多优点。它的设计理念是快速与可靠,是重量级的服务器。

但是它兴起的年代,互联网产业的发展远远比不上现在,这就使得它的问题逐渐开始显现。它不支持高并发的服务器。在Apache上运行数以万计的并发访问,会导致服务器消耗大量内存。操作系统对其进行进程或线程间的切换也消耗了大量的CPU资源,导致HTTP请求的平均响应速度降低。这些就决定了Apache在某些情况下无法成为高性能WEB服务器,于是轻量级高并发服务器Nginx就应运而生了。

俄罗斯的工程师Igor Sysoev,他在为Rambler Media工作期间,使用C语言开发了Nginx。Nginx作为WEB服务器一直为Rambler Media提供出色而又稳定的服务。
然后呢,Igor Sysoev将Nginx代码开源,并且赋予自由软件许可证。

由于:

  • Nginx使用基于事件驱动架构,使得其可以支持数以百万级别的TCP连接
  • 高度的模块化和自由软件许可证使得第三方模块层出不穷(这是个开源的时代啊~)
  • Nginx是一个跨平台服务器,可以运行在Linux,Windows,FreeBSD,Solaris,AIX,Mac OS等操作系统上
  • 这些优秀的设计带来的是极大的稳定性

所以Nginx在Apache面前也有了搏一搏的手段!

PS:在我看来Nginx虽然有着我们需要的便捷与性能,但是并不说明在总体实力上可以和Apache旗鼓相当,还是会有些差距的!!毕竟APache才是现在的主流,是毫无争议的世界第一大服务器。。

Nginx(零):背景相关推荐

  1. 跟Aivaliotis学习Nginx--[1.0.0]Nginx设计背景

    Nginx最初设计是成为一个能解决C10K问题的HTTP服务器. 到目前为止Nginx已经成为高性能Web服务器,也可以将其配置成一个Web加速器.邮件代理或者集三者为一体.可以按自己的需求结合相应的 ...

  2. Nginx(一):概念基础

    上一篇我们介绍了Nginx的背景,现在我们就要开始正式对Nginx的学习了.本篇我们将对Nginx的基本定义进行介绍,了解Nginx到底是什么.然后我们会介绍Nginx最基本的三个概念:反向代理.负载 ...

  3. 服务器后端开发系列——《实战Nginx高性能Web服务器》

    1.高性能Web服务器Nginx的配置与部署研究(1)Nginx简介及入门示例 内容:概述Nginx的背景知识和简单的入门实例. 2.高性能Web服务器Nginx的配置与部署研究(2)Nginx入门级 ...

  4. 使用Nginx防止IP地址被恶意解析

    使用Nginx的目的 使用阿里云ECS云服务器,首先聊聊笔者使用Nginx的背景. 初始化ECS后会生成一个公网IP,默认访问IP地址自动访问80端口,此时通过ip地址可直接访问启动在80端口的服务. ...

  5. nginx -s stop 出现问题 error pid

    出现问题error pid /run/nginx.pid 背景:nginx一直是運行的,儅再次執行nginx -s stop提示error pid /run/nginx.pid 原因:启动时候和现在p ...

  6. lvs服务器需要开启web服务么_Nginx+Keepalived实现web服务器高可用

    1.Nginx 业务背景 现公司需求快速搭建web服务器,对外提供给用户web服务. 需求拆分 需要基于http协议的软件,搭建服务实现 介绍 常见用法: 1) web服务器软件 httpd http ...

  7. VS2005~VS2022,那些年用过的VS,致敬,青春!

    微软在开发者博客上宣布了一则重磅消息 -- 众所期待的 Visual Studio 2022 开发工具包即将全面拥抱 64-bit,并将于今夏推出首个公共预览版本. 笔者第一次接触的VS版本还是200 ...

  8. tcp通讯一次最多能发送多少数据?_关于TCP/IP,必须知道的十个知识点

    本文整理了一些TCP/IP协议簇中需要必知必会的十大问题,既是面试高频问题,又是程序员必备基础素养. 一.TCP/IP模型 TCP/IP协议模型(Transmission Control Protoc ...

  9. 微软和NASA强强联手,重磅推出Python免费课程

    点击上方"菜鸟学Python",选择"星标"公众号 超级无敌干货第一时间推给你!!! 来源:程序员书库(ID:CodingBook) 微软宣布和美国宇航局(NA ...

最新文章

  1. eclipse java jar源码,eclipse查看Jar包源码
  2. 操作系统性能监控-磁盘IO
  3. Scala代码案例:100以内的数求和,求出当和第一次大于20的当前数(循环中断机制)
  4. 一道简单的sql语句题
  5. html如何做卷展菜单,“选择”卷展栏(可编辑网格)
  6. DBGrid 应用系列
  7. Java 使用 POI 对 Excel文件 进行读写操作
  8. 多标签分类任务大赛50万奖金等你来
  9. vaniglia 源码学习(一)
  10. 软件测试一个项目几个接口,你打开一个项目网址中间发生了什么?(软件测试面试题)...
  11. Java 集合系列18之 Iterator和Enumeration比较
  12. Java 学习笔记:第十一章 多线程技术
  13. java计算机毕业设计临大新生入学指导系统源代码+数据库+系统+lw文档
  14. 分享暄桐好作业之《临〈岁朝清供图〉》
  15. 【2019保研经验】清华贵系、清华软院、北大叉院、中科院自动化所等
  16. hdu 1677 Nested Dolls 子串
  17. hMailServer设置
  18. VirtualBox网络连接方式学习笔记
  19. 几款超好用的PDF转换软件推荐
  20. Android应用代码混淆

热门文章

  1. datagridview选中获取行号_DataGridView控件显示行号的正确代码及分析
  2. qt窗口左上角坐标变动函数使用中的误区
  3. java 什么是迭代器
  4. 计算机网络静态路由大作业 3地互联,计算机网络-静态路由配置
  5. c语言链表贪吃蛇脚本之家,C++控制台实现贪吃蛇游戏
  6. c语言 p *p,C语言之指针*p++和*(p++)区别
  7. ci php做记录删除,CI(CodeIgniter)框架中的增删改查操作_PHP教程
  8. mysql+linux+无法启动服务无法启动不了_Linux实例中MySQL服务常见的无法启动或启动异常处理...
  9. 鸿蒙唯独没有手机,想用鸿蒙OS,却没有华为手机?华为高层:还有1亿台设备可体验...
  10. debian查询端口进程_Linux查看端口、进程情况及kill进程