IT修真院·小课堂丨互联网职业小课堂在线学习平台

课堂课题:

Nginx的作用是什么,在WEB服务前端配置Nginx的好处是什么,除了Nginx,还有别的反向代理服务器吗?

关联任务:

任务五

直播时间:

2018-09-15 15:15:00


课堂内容:

视频链接:

PPT链接:

提交按钮:

小课堂内容格式


标题:

【修真院xx(职业)小课堂】课题名称

开场语:

大家好,我是IT修真院XX分院第X期的学员XX,一枚正直纯洁善良的XX程序员,今天给大家分享一下,修真院官网XX(职业)任务X,深度思考中的知识点——XXX

(1)背景介绍:

背景介绍的时候,尽可能的要宽广,讲清楚来龙去脉,讲清楚为什么会需要这个技术。

(2)知识剖析:

讲知识点的时候,尽可能的成体系,学会成体系的去给别人介绍知识。现在很多做的都是零散的,没有分类。

(3)常见问题:

最少列出1个常见问题。

(4)解决方案:

写清楚常见问题的解决方案。

(5)编码实战:

尽可能的去寻找在真实项目中在用的。如果你能找到某个网站在用你说的知识点,这是最好的。学以致用,否则当成练习题就没有意义了。多准备一些demo,讲解过程中将知识点和demo结合,便于大家理解所讲解的知识点。

(6)拓展思考:

知识点之外的拓展思考,由分享人进行讲解,这些东西就是所谓的深度,也是一个人技术水准高低比较的表现。

(7)参考文献:

引入参加文献的时候,在引用的句子后面加上序号【1】。参考文献中列出详细来源。不要去抄别人的东西,这是一个基本的态度。

(8)更多讨论:

Q1:提问人:问题?
A1:回答人(可以是分享人,也可以是其他学员):回答
Q2:提问人:问题?
A2:回答人(可以是分享人,也可以是其他学员):回答
Q3:提问人:问题?
A3:回答人(可以是分享人,也可以是其他学员):回答

(9)鸣谢:

感谢XX、XX师兄,此教程是在他们之前技术分享的基础上完善而成。

(10)结束语:

今天的分享就到这里啦,欢迎大家点赞、转发、留言、拍砖~

Nginx的作用是什么,在WEB服务前端配置Nginx的好处是什么,除了Nginx,还有别的反向代理服务器吗?     中品

辅导师兄 [修真长老]JAVA-错遇


大家好,我是IT修真院上海分院第八期学员,一枚正直纯洁善良的JAVA程序员。
今天给大家分享一下,修真院官网JAVA任务三,扩展思考中的知识点——Nginx是什么?

1 背景介绍

1.1 web服务器
Nginx 的竞争对手—Apache、Lighttpd、Tomcat、 Jetty、IIS,它们都是 Web 服务器,或者叫做 WWW(World Wide Web)服务器,相应地 也都具备 Web 服务器的基本功能 :基于 REST 架构风格 ,以统一资源描述符(Uniform Resource Identifier,URI)或者统一资源定位符(Uniform Resource Locator,URL)作为沟 通依据,通过 HTTP 为浏览器等客户端程序提供各种网络服务。然而,由于这些 Web 服务器 在设计阶段就受到许多局限,例如当时的互联网用户规模、网络带宽、产品特点等局限,并 且各自的定位与发展方向都不尽相同,使得每一款 Web 服务器的特点与应用场合都很鲜明。
对比:
1.2 web服务器对比
Tomcat 和 Jetty 面向 Java 语言,先天就是重量级的 Web 服务器,它的性能与 Nginx 没 有可比性,这里略过。

IIS 只能在 Windows 操作系统上运行。Windows 作为服务器在稳定性与其他一些性能上 都不如类 UNIX 操作系统,因此,在需要高性能 Web 服务器的场合下, IIS 可能会被“冷落”。

Apache 的发展时期很长,而且是目前毫无争议的世界第一大 Web 服务器。Apache 有许多优点,如稳定、开源、跨平台等,但它出现的时间太长了,在它兴起的 年代,互联网的产业规模远远比不上今天,所以它被设计成了一个重量级的、不支持高并发 的 Web 服务器。在 Apache 服务器上,如果有数以万计的并发 HTTP 请求同时访问,就会导 致服务器上消耗大量内存,操作系统内核对成百上千的 Apache 进程做进程间切换也会消耗 大量 CPU 资源,并导致 HTTP 请求的平均响应速度降低,这些都决定了 Apache 不可能成为高性能 Web 服务器,这也促使了 Lighttpd 和 Nginx 的出现。

Lighttpd 和 Nginx 一样,都是轻量级、高性能的 Web 服务器,欧美的业界开发者比较钟 爱 Lighttpd,而国内的公司更青睐 Nginx,Lighttpd 使用得比较少。

1.3 为什么选择 Nginx?
(1)更快
(2)高扩展性
(3)高可靠性
(4)低内存消耗
(5)单机支持 10 万以上的并发连接
(6)热部署
(7)最自由的 BSD 许可协议

2 知识剖析

  • 反向代理

  • 动静分离

  • 负载均衡


反向代理:
反向代理(reverse proxy)方式是指用代理服务器来接受Internet上的连接请求,然后将请求转发给内部网络中的上游服务器,并将从上游服务器上得到的结果返回给Internet上请求连接的客户端,此时代理服务器对外的表现就是一个Web 服务器。充当反向代理服务器也是Nginx的一种常见用法(反向代理服务器必须能够处理大量并发请求)。
动静分离
由于Nginx 具有“强悍”的高并发高负载能力,因此一般会作为前端的服务器直接向客户端提供静态文件服务,用Apache、Tomcat等服务器来处理动态资源,实现动静分离。

负载均衡
作为代理服务器,一般都需要向上游服务器的集群转发请求。这里的负载均衡是指选择一种策略,尽量把请求平均地分布到每一台上游服务器上。

3 常见问题

怎么降低上游服务器的负载?

4 解决方案

使用Nginx的反向代理可以降低上游服务器的并发压力。

5 编码实战

准备工作:
本地配置两个Tomcat1(端口8080)和Tomcat2(端口8081)
创建test文件,打包成test.war包,添加至Tomcat1(端口8080)和Tomcat2(端口8081)的weapps目录下,运行Tomcat
在这里插入图片描述
在这里插入图片描述
将nginx解压至本地
在这里插入图片描述
cmd下运行 start nginx 启动nginx
输入127.0.0.1可以看到nginx已经启动了
在这里插入图片描述
反向代理:
修改conf/nginx.conf文件
在这里插入图片描述
重启nginx
在这里插入图片描述
在这里插入图片描述负载均衡:
修改conf/nginx.conf文件
在这里插入图片描述
重启nginx
在这里插入图片描述
刷新一下
在这里插入图片描述

6 扩展思考

(1)Nginx正向代理和反向代理
http://blog.51cto.com/z00w00/1031287
(2)Nginx中的upstream轮询机制
https://www.cnblogs.com/liqiu/p/3140329.html
(3)Nginx如何实现高并发?
https://www.cnblogs.com/xawei/p/6812134.html

7 参考文献

《深入理解Nginx:模块开发与架构解析》陶辉 著

8 更多讨论


评论

[真传弟子]JAVA-刘凯 发表于 2018-09-21 16:57:06 #1

介绍了nginx的相关知识,对于negix反向代理和动静分离进行了介绍,可以拓展学习实现负载均衡的其他技术

回复

请您登录 后进行评论