1.nginx简介
nginx是一款高性能http和反向代理服务器。
nginx相比于Tomcat能够支撑5w的并发连接(而Tomcat只能支撑200-400),并且nginx对CPU和内存的消耗十分的低,运行稳定。
2.nginx应用场景
2.1动静分离
可以作为静态文件的缓存服务器,提高访问速度
为什么要做动静分离
在开发过程中,有些请求时需要后台处理的,但有些请求时不需要经过后台处理的,这些不需要经过后台处理的文件统称为静态文件。
但如果采用后台忽略静态文件这种做法的话,后台的请求次数明显增多。在我们对资源的响应速度有要求的话,我们应该采用动静分离的策略去将静态资源与后台程序分开部署,提高用户访问静态代码的速度,降低对后台应用的访问。可以将我们的静态资源放入nginx中,动态资源转发到tomcat服务器中。
2.2负载均衡
将多个请求均匀的分配到多台服务器上,减轻每台服务器的压力,提高服务的吞吐量。
2.3反向代理
将多台服务器代理成一台服务器。
反向代理是对服务端进行代理:作为客户端,我们只需要将请求发送到反向代理服务器,由反向代理服务器去选择目标服务器获取数据后,再响应给客户端,
此时反向代理服务器和目标服务器对外就是一个服务器,暴露的是代理服务器地址,隐藏了真实服务器IP地址。
3.为什么nginx的性能高
nginx的性能高得益于采用了异步非阻塞处理机制,运用了epoll模型,提供了一个队列,排队解决问题