当前位置: 首页 > news >正文

Nginx简介

Nginx是什么?可以做什么事情?

Nginx是高性能的HTTP和反向代理的web服务器,处理高并发的能力十分强大,能经受高负载的考研,有报告表明能能支持高达50000个并发连接数。

特点

  1. 占有内存少:一万个长连接(keep-alive),仅消耗2.5MB内存
  2. 并发能力强:官方数据每秒支持5万并发
  3. 模块化设计:良好的扩展性,可以通过模块方式进行功能扩展
  4. 高可靠性:主控进程和worker是同步实现,一个worker出现问题,会立刻启动另一个worker
  5. 支持热部署:不用停止服务器,实现更新配置文件,更换日志文件,更换服务器程序版本
  6. 功能丰富:优秀的反向代理功能和灵活的负载均衡策略

Nginx作为web服务器

Nginx可以作为静态页面的web服务器,同时还支持CGI协议的动态语言,比如perl、PHP等,但不支持java。java只能通过与tomcat配合完成。Nginx 专为性能优化而开发, 性能是其最重要的考量,实现上非常注重效率 ,能经受高负载的考验,有报告表明能支持高 达 50,000 个并发连接数。

正向代理

Nginx不仅可以做反向代理,实现负载均衡,还可以做正向代理。如果把局域网外的Internet想象成一个巨大的资源库,则局域网中的客户端想要访问Internet,这个时候需要用到代理服务器,这种代理服务就称为正向代理。

  • 简单一点:通过代理服务器来访问服务器的过程 就叫正向代理。
  • 需要在客户端配置代理服务器进行指定网站访问

反向代理

  • 客户端对代理是无感知的,因为客户端不需要任何配置就可以访问。
  • 我们只需要将请求发送到反向代理服务器,由反向代理服务器去选择目标服务器获取数据后,再返回给客户端,此时反向代理服务器和目标服务器对外就是一个服务器,暴露的是代理服务器地址,隐藏了真实服务器IP地址。

负载均衡

  • 增加服务器的数量,然后将请求分发到各个服务器上,将原先请求集中单个服务器上的情况改为分发到多个服务器上,将负载分发到不同的服务器,也就是我们所说的负载均衡。
  • 客户端发送多个请求到服务器,服务器处理请求,有一些可能要与数据库进行交互,服 务器处理完毕后,再将结果返回给客户端。
  • nginx 的负载均衡策略可以划分为两大类:内置策略和扩展策略。内置策略包含加权轮询和 ip hash,在默认情况下这两种策略会编译进 nginx 内核,只需在 nginx 配置中指明参数即可。扩展策略有很多,如 fair、通用 hash、consistent hash 等,默认不编译进 nginx 内核。

动静分离

为了加快网站的解析速度,可以把动态页面和静态页面由不同的服务器来解析,加快解析速度。降低原来单个服务器的压力。

http://www.lryc.cn/news/60904.html

相关文章:

  • 十五分钟带你学会 Electron
  • 设计模式-结构型模式之桥接模式
  • 软件测试工程师为什么要写测试用例?
  • 【DAY40】VUE练习
  • 实模式的寄存器
  • 【UE 控件蓝图】通过键盘选中要点击的按钮 通过Enter键点击
  • SSR在天猫优品大促会场的探索实践
  • WPF教程(一)---创建一个WPF程序基础知识
  • 【C++ 四】函数、指针
  • 虚拟人与娱乐传媒融合,推动综艺新模式
  • Linux_红帽8学习笔记分享_5
  • 网络编程及项目思路
  • GD(兆易创新)系列FLASH进行FPGA和ZYNQ配置固化相操作
  • 通过一个小例子来看一下C语言指针 p、*p、p、*p、*p分别代表什么
  • 【内摹访谈】谈谈AI爆发前夜的B端设计
  • Redis—AOF持久化
  • OpenCV实例(五)指纹识别
  • 第二章 法的内容与形式
  • 外包干了四年,感觉废了..
  • Git如何推送当前代码到远程仓库
  • 第五章 工厂模式
  • Spring MVC 参数解析(13)
  • 探索 Qt WebEngineWidgets:从底层原理到高级应用与技巧
  • leetcode160. 相交链表
  • 核心业务7:放款实现
  • STM32F4系列芯片RTC模块介绍
  • MySQL 在线人数 场景分析
  • 使用mybatis和dynamic-datasource-spring-boot-starter动态切换数据源操作数据库
  • 【日常刷题】迷宫问题
  • 【Python童年游戏】满满的回忆杀—那些年玩过的童年游戏你还记得吗?那个才是你的菜?看到第一个我就泪奔了(致我们逝去的青春)