在线客服
扫描二维码
下载博学谷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基础 ArrayList,Vector, LinkedList 的存储性能和特性是什么?
这样的题比较考水平,两个方面的水平:一是要真正明白这些内容,二是要有较强的总结和表述 能力。如果你明白,但表述不清楚,在别人那里则等同于不明白。
12747
2019-06-03 11:18:58
自学Java需要什么基础?零基础可以学吗?
Java长久以来都是最受开发者和企业欢迎的编程语言。因此目前Java的就业形势一片大好,对于那些想转行高薪有前途的求职者来说,学习Java是个很好的选择。有些人可能要问了:自学Java需要什么基础?零基础可以学吗?答案是肯定的,学习是没有限制的,只要你愿意学习,零基础的小白也不用担心学不好Java。关键在于大家有没有学习的决心和毅力以及科学的学习方法。
6482
2019-10-21 18:10:35
Java学习如何提升学习效率?
Java学习如何提升学习效率?刚刚接触Java的同学估计有满脑子的困惑,Java的体系结构异常庞大,很多刚接触的朋友学着学着就不知道自己的路线是什么,不知道如何进行学习路线规划,也不知道学习什么内容可以找到相关的工作等。
5840
2020-06-17 14:58:23
Java的发展和前景如何?
目前大环境下没有稳定的语言,核心的是过硬的技术。如果够决心能吃苦,入门互联网行业是一个不错的选择。小朋友你可能有很多问题:学Java能找到好工作么、市场是不是饱和了、Java是不是没落了等问题。通过所有外部表现来看Java仍活着发展着。
6244
2020-06-23 10:50:35
Java标准注解学习总结
Java主要提供了5个标准注解,分别是:Override、Deprecated、SuppressWarnings、SafeVarargs和FunctionalInterface。本文将从“如何使用这5个标准注解”,还有编译器在编译时:“如何处理它们”来讲述。一起来看Java标准注解的学习总结吧!
5034
2020-08-07 10:59:23
