nginx简单了解
1. nginx概述
- Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器
- 在连接高并发的情况下,Nginx是Apache(tomcat - 150个)服务不错的替代品
- 能够支持高达 50,000 个并发连接数的响应
- Nginx代码完全用C语言从头写成
2. nginx的一个面试题
什么是长轮询,基于事件?
长轮询,基于事件基于反应器模式,是用户的请求 - > 缓存 - > 工作线程进行处理的一个过程,流程图如下:
长轮询:就像一个死循环一样,一天24小时不停的进行询问
基于事件:用户的请求
3. nginx能做什么
1.动静分离
- 动态的部署在apache
- 静态的部署在nginx
2.反向代理
代理一个重要的特点就是隐藏,分为正向代理和反向代理
正向代理隐藏的是客户端,流程图如下:
反向代理隐藏的是服务器,流程图如下:
通过8080端口和不同的地址可以访问对应地址的服务器
3.负载均衡
负载均衡就是指将负载(工作任务)进行平衡、分摊到多个操作单元上(例如服务器)进行运行。
负载均衡解决的是通过算法策略解决服务器的选择问题。
常用的算法策略:
1.轮询(默认的):直接挨个选择
2.加权轮询:服务器性能好的承受更多的服务
3.最小连接数:那个服务器连接的少,比较闲承受更多的服务
4.IP Hash:通过请求离服务器的位置来选择服务器,选择近的。例如对于杭州的请求,如果有服务器在杭州就优先使用杭州的服务器。
流程图如下:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· Vue3状态管理终极指南:Pinia保姆级教程