码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Java面试题以及答案---Nginx


    4.1 Nginx是什么?

    Nginx 是一个高性能的 HTTP 和反向代理服务器,及电子邮件代理服务器,同时也是一个非常高效的反向代理、负载平衡。

    4.2 Nginx的作用?

    1.反向代理,将多台服务器代理成一台服务器。
    2.负载均衡,将多个请求均匀的分配到多台服务器上,减轻每台服务器的压力,提高 服务的吞吐量。
    3.动静分离,nginx 可以用作静态文件的缓存服务器,提高访问速度

    4.3 Nginx的优势?

    (1) 可以高并发连接(5 万并发,实际也能支持 2~4 万并发)。
    (2) 内存消耗少。
    (3) 成本低廉。
    (4) 配置文件非常简单。
    (5) 支持 Rewrite 重写。
    (6) 内置的健康检查功能。
    (7) 节省带宽。
    (8) 稳定性高。
    (9) 支持热部署。

    4.4 什么是反向代理?

    反向代理是指以代理服务器来接受 internet 上的连接请求,然后将请求,发给内部网络上的服务器,并将从服务器上得到的结果返回给 internet 上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。
    反向代理总结就一句话:代理端代理的是服务端.

    4.5 什么是正向代理?

    一个位于客户端和原始服务器之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。客户端才能使用正向代理。
    正向代理总结就一句话:代理端代理的是客户端。

    4.6 什么是负载均衡?

    负载均衡即是代理服务器将接收的请求均衡的分发到各服务器中,负
    载均衡主要解决网络拥塞问题,提高服务器响应速度,服务就近提供,达到更好的访问质量,减少后台服务器大并发压力。

    4.7 Nginx是如何处理一个请求的?

    首先,nginx 在启动时,会解析配置文件,得到需要监听的端口与 ip地址,然后在 nginx 的 master 进程里面先初始化好这个监控的 socket,再进行listen,然后再 fork 出多个子进程出来, 子进程会竞争 accept 新的连接。
    此时,客户端就可以向 nginx 发起连接了。当客户端与 nginx 进行三次握手,与 nginx
    建立好一个连接后,此时,某一个子进程会 accept 成功,然后创建 nginx 对连接的封装,即 ngx_connection_t 结构体,接着,根据事件调用相应的事件处理模块,如 http 模块与客户端进行数据的交换。
    最后,nginx 或客户端来主动关掉连接,到此,一个连接就寿终正寝了。

    4.8 为什么Nginx性能这么高?

    得益于它的事件处理机制:异步非阻塞事件处理机制:运用了 epoll模型,提供了一个队列,排队解决。

    Nginx教程

    Nginx教程,Java进阶从0到1学会Nginx分布式框架

    Java最新课程:

    Java零基础视频教程(2022最新Java入门,含斯坦福大学练习题+力扣算法题

    Java基础入门:

    java零基础自学首Java入门教程(含Java项目和Java真题)

    Javaweb核心基础

    JavaWeb基础教程,Java web从入门到企业实战完整版

    Spring Cloud最全微服务架构:

    史上最全面的springcloud微服务技术栈

    SSM框架教程:

    SSM框架教程_Spring+SpringMVC+Maven高级+Spring

    SpringBoot2全套视频教程:

    SpringBoot2全套视频教程,springboot零基础到项目实战

  • 相关阅读:
    【题库】咸鱼之王答题挑战题库大全
    Scala的变量和数据类型
    Postman之页面简介 V9.31.0
    使用动态住宅代理还能带来哪些好处?
    JWT原理
    《论语译注》笔记
    创建.gitignore文件并使用
    划重点!CISA、FBI、NSA联合发布深度伪造威胁网络安全报告
    Linux从入门到放弃-CentOS 7安装Docker
    API集成测试:SpringBoot+Junit
  • 原文地址:https://blog.csdn.net/Aa112233aA1/article/details/127409177
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号