在线客服
扫描二维码
下载博学谷APP
扫描二维码
关注博学谷微信公众号
每当网站访问量较高的时候,网站的反应速度就变得非常缓慢,特别是图片、css、js等这些静态资源的加载,这个时候应该怎么办呢?其实只需一个Nginx就可以轻松解决上述问题,因为Nginx擅长处理像图片、css这样的静态资源。下面我们就开始入门学习Nginx的三大应用场景吧!

应用场景一:静态资源服务器
首先,提供静态资源服务,Nginx在处理HTML、css、图片等这些静态资源请求的速度是非常快的,更重要的是可以把网站上的动态资源和静态资源分开,这就是动静分离。现在我们来认识一下正向代理和反向代理。我们平常访问google是不通的,需要花钱买个VPN,通过这个VPN就可以在自己电脑上访问google、youtube这样的网站了。这个VPN就可以说是正向代理服务器。而且代理会把访问者隐藏在幕后,google服务器只知道有人访问了它,但并不知道是谁访问的。Nginx能用于正向代理,不过在大数的情况下都是用于反向代理。下面我们来看看Nginx的第二个应用场景,反向代理。
应用场景二:反向代理
反向代理跟正向代理正好相反,正向代理隐藏的是请求者的身份,反向代理隐藏的是服务者的身份。简单来讲,就是我在自己电脑上访问某宝的网站,但是它并不真正的提供服务,而是一个反向代理服务器?你的请求会先到达这个反向代理服务器,它会把请求在转发到真正服务器,拿到结果后在返给你。
再举个通俗的例子,假如你需要钱,但是又不知道谁有钱,所以你找了一个网贷平台,提交资料后,平台把钱打给你,你并不知道也不需要关注,这钱是谁的,从哪里来。平台拿到你贷款的请求后,会在内部去找对应的金主拿钱,拿到钱后再给你。这些金主才是真正的服务者,但是对你而言是隐藏的。反向代理,因为代理的是服务者,对于请求者而言,服务者的身份是隐藏的,这样就能更加保证服务者的安全性。
应用场景三: API服务
因为业务服务具有一些性能问题,但是数据库、reids好的多,这时用Nginx直接访问会提升一些性能,这也是为什么入门学习Nginx如此重要。应用服务它本身的性能有很多问题,但是数据库服务要比应用服务好的多,因为它的业务场景比较简单,它的并发性能和TPS都要远高于应用服务,所以衍生出这一应用场景——由Nginx直接去访问数据库、redis或应用服务。
根据Nginx强大的并发性能实现如web防火墙这样的复杂业务功能来提供给用户,就要求我们的API服务有非常强大的业务处理功能,所以像OpenResty、或者像Nginx集成的JavaScript,利用Lua、Javascript这样的语言功能,和它们语言先天自带的一些工具库,来提供完整的API服务。不过如果只是入门学习,能够使用Nginx处理静态资源完善网站就绰绰有余了。
看完Nginx入门学习之应用场景,大家应该明白了Nginx既能够处理静态资源,又可以做正向、反向代理,还能提供 API服务。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
零基础学Java开发有多难?Java入门方法
零基础学Java开发有多难?Java入门方法,零基础学Java开发难点在于不知道学习路径、没有系统的学习资料、没专业惹事及时答疑解惑,不知道如何自学。只要你想学习没人能阻止你进步,但如果你是三天打鱼两天晒网学Java开发肯定是学不会的,学习任何一门编程语言都要坚持。
7039
2019-08-20 16:07:24
电脑编程入门自学Java指南
随着Java近些年来的强劲发展,想要转行学习Java的初学者也越来越多了。然而,入门自学Java并不是一件轻松的事情。众所周知,万事开头难,尤其是没有编程语言基础的学习者,不仅仅需要付出更多的心血和汗水,还需要科学地制定学习规划,下面小编为大家准备了一份电脑编程入门自学Java指南,内容包括了Java的学习内容和路径,赶紧来一起看看吧!
7566
2019-12-30 15:15:34
TLAB线程本地分配缓存区是什么?TLAB工作原理分析
TLAB线程本地分配缓存区是什么?工作原理分析,TLAB全称Thread Local Allocation Buffer,即线程本地分配缓存区,是一个线程专用的内存分配区域。在线程初始化时,虚拟机会为每个线程分配一块TLAB空间,只给当前线程使用。
11431
2020-03-17 15:26:25
Spring Cloud Alibaba微服务架构学什么?为什么要学?
为什么要学Spring Cloud Alibaba?Spring Cloud Alibaba本身也是Spring Cloud的子项目是其中的一部分。 如果使用的是第一代(eureka, hystrix, zuul),在2020之后有必要把这些组件替换掉的。在业界已经广泛使用.springcloud中有部分组件不维护了。
7674
2020-06-16 10:52:42
Java基础之for循环使用练习
Java语言与现实生活是紧密联系的,因此在Java语言中也有让代码重复执行的循环结构。其中Java开发中使用最多的是 for 循环,并非它有多特殊,知识习惯而已。比如有一个需求:把“爱的魔力转圈圈”输出5遍。你当然可以写5次输出语句,但是太low,也过于冗杂。下面我们来讲讲for循环,然后再做一做相关的使用练习。
6647
2020-08-18 12:24:49
