nginx代理原理(端口复用)探究

前言:对于一些常用的插件,我们应该学会如何使用。同时,其实现原理也要进行深究,可以为其他的项目开发做借鉴。

探究方案:

一、发布两个不同的服务,这两个服务的端口不致

二、配置nginx,让这两个不同的服务用相同的端口代理

三、请求代理接口,验证返回结果

四、原理分析

验证过程:

一、写两个不同的接口服务,如a接口:http://localhost:9876/;

b接口:http://localhost:2345/get_data;

二、配置nginx

配置简要说明:location后边配置的是代理接口的请求路径。内部proxy_pass配置的是需要代理的接口详细路径。

三、请求验证

curl http://localhost:8000/

curl http://localhost:8000/a1/

原理分析:本质上其实就是利用一个端口的服务将多个端口的服务进行汇集转发。相当于咱们在一个服务下,直接写多个接口。本质上是一样的。

这个代理在当前的共作场景中有一个好处:未打通的端口可以不需要再进行端口开通操作,服务发布后,如果nginx是在本机,则可以通过nginx直接调用,然后再由已发布服务进行代理转发访问。由于当前的工作中,对于安全的要求比较高,而且安全策略中,对于端口的控制比较严格。所以这种方式会更合理一些。

相关推荐
想你依然心痛37 分钟前
Linux用户空间与内核空间通信:netlink、ioctl、mmap 零拷贝与性能对比
linux·运维·服务器
沉静的小伙40 分钟前
在微服务中使用领域事件
java·运维·微服务
wenzhangli71 小时前
oodAgent 4.0 Skills分布式调度 — 从Code Agent实战看自主维护的Agent网络
运维·网络·人工智能·自动化
做个文艺程序员1 小时前
Linux第12篇:性能监控与瓶颈分析——CPU/内存/IO/网络全维度
linux·运维·网络
K姐研究社2 小时前
OiiOii 2.0 实测 – 智能画布实现 AI 视频创作自动化
运维·人工智能·自动化
HAPPY酷2 小时前
【ROS2】 Conda 环境搭建(命令行版)
linux·运维·python·ubuntu·机器人·conda
wang_shu_mo_ran3 小时前
网络编程(一):网络编程初识
运维·服务器·网络
姚青&4 小时前
持续交付与 DevOps 体系
运维·devops
ton_tom4 小时前
设备驱动程序编程-Linux2.6.10-kdb安装-32位
linux·运维·服务器
Elastic 中国社区官方博客4 小时前
谁来评判评判者?在 Elasticsearch Workflows 中使用 LLM-as-a-Judge
大数据·运维·人工智能·elasticsearch·搜索引擎·ai·全文检索