为什么使用 Node.js 实现反向代理提到反向代理时我们通常会想到Nginx,它配置简单,性能很好 那么使用Node.js实现反向代理有什么必要呢? 一个典型的使用场景就是微服务网关 服务网关就有反向代理的功能 后端有很多个服务,每个服务又可能由多个一起提供服务,对于客户端来说,不需要关心这些服务的细节,只需要和网关打交道,由服务网关来指定服务提供者 后端具体有哪些可用的服务,是动态的,例如有问题的服务下线、新服务上线,在这种动态场景下,Nginx 就不太适合了,使用 Node.js 来做服务网关的话会更方便一些 例如 所有的 service 都去 ZooKeeper 中注册,Node.js 去 ZooKeeper 中动态获取可用服务列表 实现方式Node.js 的Http Proxy模块可以轻松实现反向代理的功能 (1)安装 Http Proxy
(2)创建模拟后端服务的server service.js(禁用词语 8000)
(3)创建反向代理server proxy.js(禁用词语 8080)
(4)测试 先启动 service.js
再启动 proxy.js
浏览器中访问 proxy
可以看到 service 输出的信息 实现了反向代理的基本功能 点击 “阅读原文” 查看 文章列表 本文转载于微信公众号: 性能与架构(yogoup),更多微信文章请扫描关注公众号: |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|