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

北京想象力网站建设公司黄页88网官网电话

北京想象力网站建设公司,黄页88网官网电话,杭州包装设计,网站 源码 php文章目录 一. 什么是Nginx二. ngnix的一些模型1、nginx的进程模型2、worker的抢占(锁)机制模型3. nginx事件处理模型 三. nginx加载静态资源的过程 一. 什么是Nginx Nginx是一个高性能HTTP反向代理服务器,以下是nginx的相关能力 反向代理&am…

文章目录

  • 一. 什么是Nginx
  • 二. ngnix的一些模型
    • 1、nginx的进程模型
    • 2、worker的抢占(锁)机制模型
    • 3. nginx事件处理模型
  • 三. nginx加载静态资源的过程

一. 什么是Nginx

Nginx是一个高性能HTTP反向代理服务器,以下是nginx的相关能力

  1. 反向代理:nginx选择去将请求路由到那个ip
  2. 通过配置文件实现集群、负载均衡
  3. 可以处理2-3万并发连接数,官方监测能支持5万并发
  4. 静态资源服务器:通过将静态资源变成为服务。
  5. 网关:对接口进行拦截,配置安全管理

 
正向代理与反向代理的概念

正向代理:请求直接到达目标服务器
反向代理:请求被Nginx统一接收,反向代理服务器接收到之后,按照一定的规则将请求分发给指定服务器(通过http模块)
反向代理的优点:可以隐藏服务器的存在和特征,充当client和服务器的中间层,这是比较安全的。

 

二. ngnix的一些模型

1、nginx的进程模型

nginx采用单主进程,多子进程的模型

配置位置:nginx.conf
worker_processes 默认为1,也可以配置为:worker_processes auto;
在这里插入图片描述
请求过程:

从客户端(前端页面请求、postman请求)到nginx(master)接收请求,分发请求到工作进程,工作进程处理请求并将返回结果发送给客户端,最后管理nginx与客户端的链接。

  1. 客户端发送请求:当客户端发送HTTP请求到Nginx服务器时,Nginx会监听并接收这个请求。
  2. Nginx接收请求:Nginx的主进程接收到客户端的请求后,会将请求分发给工作进程(worker process)来处理。
  3. 工作进程处理请求:工作进程会根据Nginx的配置文件中的规则,对请求进行处理。这包括处理静态文件、代理请求到后端服务器、负载均衡等操作
  4. 响应客户端:工作进程处理完请求后,会生成相应的HTTP响应,并将响应发送回给客户端。
  5. 关闭连接:一旦响应发送给客户端,Nginx会关闭与客户端的连接,释放资源。

注意:

  1. master监控worker的健康状况,如果有关闭的worker进程,会重启新的worker进程。
  2. worker之间相互独立。

查看主进程和工作进程

ps -ef | grep nginx 

在这里插入图片描述
看到有一个主进程,若干work进程。

 

2、worker的抢占(锁)机制模型

在这里插入图片描述
假设一个master开启三个worker子进程,
此时client发起请求,三个worker去抢占互斥锁accep_mutex,假设worker1抢到了就处理请求,其他worker等待worker1处理完一个请求并将结果返回给client后,重新抢占锁。

 

3. nginx事件处理模型

当client向worker1请求堵塞时,其他client可以接着发出请求到work1,是异步非堵塞模型。

在这里插入图片描述
为什么Nginx性能这么高?

因为他的事件处理机制为异步非阻塞事件处理机制:运用了epoll模型,提供了一个队列,排队解决
非阻塞使得系统资源开销远远小于阻塞模式,因为系统不需要创建新的进程(或线程)。

 

三. nginx加载静态资源的过程

nginx接受客户端请求并找到静态资源的过程

在这里插入图片描述
加载过程:

  1. 客户端请求:在页面上输入http:ip:80/ 。路由“/”的请求会请求到Nginx服务器,
  2. nginx监听到来自80端口的请求,接着找到监听80端口的server,最后server加载默认的html

这里通过一个简单的server块配置理解下server:

server {listen       80;server_name  localhost;location / {root   html;index  index.html index.htm;}

这里表示一台server,监听80端口,server_name对应client的请求ip、hostname,当server监听到之后会加载nginx目录(可配)下html目录配置的文件。

接着详细描述一下:

  1. server指令用于定义一个虚拟主机(Virtual Host),即一个独立的服务器实例。每个server块都包含了对特定域名或IP地址的请求的处理规则
  2. 端口:server块的监听端口,即当有固定端口的进程请求时,server会进行拦截
  3. 域名和IP地址:可以使用servername指令来指定server块所匹配的域名或IP地址。例如,servername example.com;表示匹配域名为example.com的请求。
  4. 请求处理:拦截请求后,根据配置进行相对应的请求:如代理、重定向、静态文件处理等。例如,可以使用location指令来匹配要请求的URL
  5. SSL/TLS支持:如果需要启用HTTPS协议,可以在server块中配置SSL/TLS证书和相关参数,以实现安全的通信。
  6. 负载均衡:Nginx还支持负载均衡功能,可以在server块中配置upstream指令,将请求分发给多个后端服务器,以提高系统的性能和可靠性
http://www.yayakq.cn/news/371943/

相关文章:

  • 黄圃网站建设域名抢注网站源码
  • 公司网站年费怎么做会计分录湖北省南漳县城乡建设局网站
  • 郑州网站建设君捷网摘网站推广法
  • 装饰网站建设优惠套餐在线设计logo字体
  • 张家港市住房和城乡建设局网站西安优化seo托管
  • 国外平面设计素材网站建立网站预算
  • 塑胶原料 东莞网站建设中国建设银行官网站住房公积金
  • 南京网站设计收费标准徐州专业三合一网站开发
  • 温州公司做网站营销型门户网站建设方案
  • 怎么判断网站开发语言微信朋友圈推广软文
  • 长沙哪个公司做网站好寮步镇做网站
  • 设计图片网站哪个好数字营销策划公司
  • html5的网站有哪些重庆集团网站建设
  • 建站平台在线提交表格东道品牌创意集团
  • wordpress网站结构wordpress去掉尾巴
  • 做微信平台网站万能造假截图生成器
  • 张家口外贸网站建设扁平化网站 psd
  • 网站建设程序开发做网站哪家公司比较好而且不贵
  • 0基础学做网站wordpress资源占用
  • 郑州营销网站建设设计京东pc网站用什么做的
  • 公司软件网站开发怎么入账网站建设自建与租用区别
  • 高端网站制作上海金蝶软件多少钱一套
  • 女网友叫我一起做优惠券网站网络技术培训班
  • 企业 php网站建设263企业邮箱怎么注册
  • ps个人网站设计公司网站简介怎么做
  • 网站规划总结品牌注册公司
  • 网页设计作业个人网站门户网站有哪些
  • 专门做任务的网站6建设一个蛋糕网站的背景与目的
  • 内江网站建设科技小手工
  • 想自己做网站推广私人可注册网站吗