服务器能干什么,服务器的作用介绍( 三 )


互联网中的请求被发送到反向代理,反向代理将请求转发到内部网中的服务器 。
反向代理的主要功能是:
加密和SSL加速 负载均衡 缓存静态内容 压缩 减速上传 安全防火墙 外网发布 突破互联网封锁 解决跨域问题反向代理的基本工作原理
反向代理服务器的组成和处理过程如下:
左边浅黄色的功能模块处理外网报文,右边灰色的功能模块处理内网报文 。
TCP侦听模块
TCP监控请求,这里的请求是指消息内容为应用层协议(如HTTP、FTP、Email等应用层协议)的请求 。
至于这里是否会生成一个单独的线程开始处理,这个就看服务器自己了 。目前最流行的方法是先进入消息队列,然后异步处理,这样可以大大提高代理的吞吐量和稳定性 。
匹配代理服务器
根据一个表(存储外网URI和内网服务器的对应关系,通常需要手动设置),匹配的话代理会继续处理,否则会根据外网协议,比如HTTP协议返回错误消息,这个会返回404 。
应用负载平衡策略
对于大型互联网应用,为了稳定整个系统,解决单点问题,需要根据用户自定义的策略,将消息合理地转发到代理服务器 。简单的策略是哈希分布或者随机分布,一般可以由用户配置和选择 。
预处理
这里根据协商好的外网应用协议进行解密、安全、会话、解压缩等处理 。
新生成的网络消息
这里按照约定的内网应用协议生成网络消息,加密、安全、会话、压缩等处理都可能在这里进行 。
转发到代理服务器
将新生成的网络消息发送到内部网服务器(可能是Web服务器、FTP服务器、邮件服务器) 。
接受网络消息
接受内网服务器反馈的网络消息 。
预处理
在这里,加密、安全、对话、压缩等 。根据商定的外部网络应用协议进行处理 。
资源输出模块
此时,生成符合外网应用协议要求的消息,并发送给外网连接的另一端(用户代理) 。
常用反向代理服务器
你必须记住他们的名字:Ngnix,IIS,Apache 。
摘要
从概念上讲:
Web 服务器是提供 WWW 服务的程序 。Web 容器是提供给开发者的框架 。Web 应用程序服务器内容丰富得多,既可由各厂商通常遵循一定的工业标准并自定义扩展功能而成,也可以利用开源组件轻量级拼装打造 。反向代理服务器在企业级应用中表现突出,具有解决集中式安全,负载均衡等等优点 。如今,这四个概念之间的界限越来越模糊 。看看这张桌子 。
关于Kerstrel是否是Web容器有两种观点:
由于 Kerstrel 不提供编写应用的框架,所以它不是容器;ASP.NET Core 才是容器,因为它提供了开发应用的框架并提供 Web 应用(MVC,Web API)运行环境 。Kerstrel 提供了运行环境 。我们欢迎您的强烈意见,以帮助我们澄清ASP.NET核心集装箱的概念 。


推荐阅读