随笔 - 272  文章 - 7  评论 - 27  阅读 - 83万

正向代理,反向代理,路由(转)

c# yarp的API网关

最近研究Web Api,接触到路由的概念,因为有些时候总是把路由和代理的概念搞混,所以特地去查了一下代理的相关知识点,简单总结如下。

 

正向代理

大多数人最早接触到“代理”这个概念,一般是正向代理。

比如你所在的公司只能访问局域网,如果想访问外网,需要设置一个代理;比如我们想访问Google这样的网站,一般无法直接访问,也需要一个代理。

此时,“我”和“代理”之间可以直接通信,和“目标站点“无法直接通信,需要”代理“访问”目标站点“,把接收到的结果发送给我。

反向代理

其实我们应该都访问过反向代理,只是自己不知道而已。比如我们访问某个公司的服务,发送请求到对方服务器。有些情况下这台服务器就是一个”反向代理“,它接受来自网络的请求,然后根据代理规则,转发给内部服务器,并将从服务器上得到的结果返回给网络上的请求方。

为什么要这样做呢?首先是保证内网安全——不直接把内网服务器暴露在公网上;然后还可以通过反向代理服务器优化服务器的负载。

引用一张图来解释二者之间的区别:


image.png

通过上面的解释,你会发现其实代理的概念比较简单易懂,只要顺着请求经过的服务器,顺藤摸瓜就能搞清楚。

路由

而路由就很难这么简单的解释。首先路由这个概念就包括许多内容,哪怕仅仅局限在在Web App里,也有前端路由和后端路由的区分,具有不同的实现方式。

我自己的简单理解,就是通过一行URL,如何找到最终访问的内容:比如是一个页面,或者是一个Http接口,等等。它是要找到最终访问的那几行代码的。

区别

综上,我的理解就是,代理是一个更加宏观的概念,而路由(概念缩小到Web App里)则比较微观。如果说的不对也欢迎留言讨论




posted on   NLazyo  阅读(241)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· 单线程的Redis速度为什么快?
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示