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

java分享会

分享人:龚剑飞

1.背景介绍

2.知识剖析

3.常见问题

4.解决方案

5.编码实战

6.扩展思考

7.参考文献

8.更多讨论

1.背景介绍

先介绍下背景

Nginx是什么?

Nginx (engine x) 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的

2.知识剖析

Nginx的作用

1、作为 Web 服务器:相比 Apache,Nginx 使用更少的资源,支持更多的并发连接,体现更高的效率,这点使 Nginx 尤其受到虚拟主机提供商的欢迎。能够支持高达 50,000 个并发连接数的响应,感谢 Nginx 为我们选择了 epoll and kqueue 作为开发模型.

2、作为负载均衡服务器:Nginx 既可以在内部直接支持 Rails 和 PHP,也可以支持作为 HTTP代理服务器 对外进行服务。Nginx 用 C 编写, 不论是系统资源开销还是 CPU 使用效率都比 Perlbal 要好的多。

3、作为邮件代理服务器: Nginx 同时也是一个非常优秀的邮件代理服务器(最早开发这个产品的目的之一也是作为邮件代理服务器),Last.fm 描述了成功并且美妙的使用经验。

4、Nginx 安装非常的简单,配置文件 非常简洁(还能够支持perl语法),Bugs非常少的服务器: Nginx 启动特别容易,并且几乎可以做到7*24不间断运行,即使运行数个月也不需要重新启动。

3.常见问题

WEB服务前端配置Nginx的好处是什么?

4.解决方案

答案很简单:反向代理与负载均衡

那么什么是反向代理呢?

要搞清楚反向代理,想捋一捋正向代理的概念:比如我们想通过自己的计算机A访问一个国外网站B,直接访问不了,此时有一台服务器C,是可以访问B的,那么我们就可以通过C来访问B。C就叫做代理服务器。 正向代理特点:就是我们明确知道要访问哪个网站,比如这里就清楚是网站B。

再举个例子:当我们有一个服务器集群时(假定每个服务器内容一样),并且此时我们通过一个代理服务器访问集群,注意,由于服务器内容是一样的,我们并不知道是哪一台服务器在为我们服务,这种代理就是反向代理

负载均衡是通过反向代理实现的

用户访问会先访问到Nginx服务器,然后Nginx服务器再从服务器集群中选择压力较小的服务器,然后将该访问引向该服务器

5.编码实战

6.扩展思考

还有什么别的反向代理服务器么?

请看图

7.参考文献

http://blog.csdn.net/zhu_tianwei/article/details/19396527

http://www.nginx.cn/doc/

8.更多讨论

鸣谢

感谢观看,如有出错,恳请指正

BY : 龚剑飞