Nginx[001]socket多进程及IO复用

本文详细解析了正向代理与反向代理的工作原理,包括客户端如何通过代理服务器访问目标服务器,以及Nginx作为反向代理的角色,如何接收并分发请求至后端服务器。同时介绍了服务器处理流程及socket的IO复用机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

正向代理:
客户端非常明确要访问的服务器地址;
服务器只清楚请求来自哪个代理服务器;
而不清楚来自哪个具体的客户端;
正向代理模式屏蔽或者隐藏了真实客户端信息;
反向代理:
多个客户端给服务器发送的请求, Nginx服务器接收到之后;
按照一定的规则分发给了后端的业务处理服务器进行处理了;
此时, 请求的来源也就是客户端是明确的;
但是请求具体由哪台服务器处理的并不明确了;
Nginx扮演的就是一个反向代理角色;

服务器处理流程

  1. 服务器监听传入连接.
  2. 客户端连接到服务器.
  3. 服务器接受连接并处理输入.
  4. 服务器响应客户端.

socket的IO复用
IO复用异步非阻塞程序使用经典的Reactor模型,Reactor顾名思义就是反应堆的意思,它本身不处理任何数据收发。只是可以监视一个socket(也可以是管道、eventfd、信号)句柄的事件变化。
Reactor只是一个事件发生器,实际对socket句柄的操作,如connect/accept、send/recv、close是在callback中完成的。

安装libevent依赖:参考如下-这是workman扩展安装的参考

http://doc.workerman.net/install/install.html

相关代码参见:

https://github.com/masterzcw/nginx/tree/master/0731

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值