Nginx
一、什么是Nginx
Nginx是一款轻量级、高性能、稳定性高、并发性好的HTTP和反向代理的web服务器。
Nginx是一款轻量级的高性能的HTTP和反向代理服务器、邮件代理服务器;Nginx是采用C语言开发编写的,已经移植到许多体系结构和操作系统,包括:Linux、FreeBSD、Solaris、Mac OS X、AIX以及Microsoft Windows。
二、Nginx的特点
Nginx 特点是轻量级、占有内存少、并发处理能力强,以高性能、低系统资源消耗而闻名。Nginx的并发处理能力在同类型的Web服务器中表现极好(Lighttpd、Apache),在全世界范围内大量的网站使用了Nginx,国内互联网中也大量使用了Nginx,比如:淘宝、新浪、网易等。
三、什么是反向代理服务器
反向代理服务器:反向代理方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。
四、正向代理和反向代理的区别
正向代理:代理在客户端,浏览器先访问vpn地址,vpn地址转发请求,并将最后请求结果原路返回来。
反向代理:反向代理是作用在服务器端的,是一个虚拟ip。对于用户的一个请求,会转发到多个后端处理器上 的一台来处理该具体请求。
五、什么是负载均衡
负载均衡:负载均衡就是把所有的请求的处理分摊到多个操作单元上进行执行,例如:web服务器、FTP服务器、企业关键应用服务器和其他关键任务服务器等,从而共同完成工作任务。负载均衡是分布式系统架构设计中必须考虑的因素之一,负载均衡的关键在于【均匀】,这里的均匀是指在一个比较大的范围内是基本上的均匀的,并不是完全均匀的。
六、Nginx的静态代理
一个web应用中不可避免的会包含众多的静态资源(如html页面、图片、js、css等),这些资源要显示到浏览器上也会向服务器发送大量的请求,无疑的会给服务器带来十分严重的处理压力。而Nginx有一个显著优势 就是擅长处理静态资源,在这方面相比tomcat等应用服务器,Nginx拥有更好的性能和效率。所以在实际应用中,我们常常将静态资源比如图片、css、js等交给Nginx处理,把所有对静态资源的访问由tomcat等应用 服务器改为访问Nginx。这就叫Nginx的静态代理。正向代理是指位于客户端和原始服务器之间的服务器,为了从原始服务器上取得内容,客户端先代理服务器发送一个请求并指定目标(原始服务器),然后代理向原 始服务器转发请求并将获得的内容返回给客户端。客户端才能使用正向代理。
七、动静结合概述
动静结合是实际应用中常见的一种场景,主要是为了实现动静资源的分离。动态资源,如jsp、servlet等由tomcat或其他web服务器完成;静态资源,如图片、css、js等由nginx或其他http服务器完成。动静结合充分利用了服务器各自的优势,从而达到更高效合理的架构。
八、Nginx与apache的区别
轻量级的,比apache占用更少的内存以及资源。抗并发,Nginx处理请求是异步非阻塞的,而apache是阻塞型的,在高并发下Nginx能保持低资源消耗高性能高度模块化设计,编写模块相对简单,最核心的区别在于apache是同步多进程模型,一个连接对应一个进程,Nginx是异步的,多个连接可以对应一个进程。
块相对简单,最核心的区别在于apache是同步多进程模型,一个连接对应一个进程,Nginx是异步的,多个连接可以对应一个进程。