zdppy_api 中间件请求原理详解

单个中间件的逻辑

整体执行流程:

  • 1、客户端发起请求
  • 2、中间件拦截请求,在请求开始之前执行业务逻辑
  • 3、API服务接收到中间件处理之后的请求,和数据库交互,请求数据
  • 4、数据库返回数据
  • 5、API处理数据库的数据,然后给客户端
  • 6、中间件拦截API服务的响应数据,在响应抵达客户端之前添加业务逻辑
  • 7、将API服务的数据经过中间件处理之后,响应给客户端

多个中间件的执行逻辑

整体执行流程:

  • 1、客户端发起请求
  • 2、中间件拦截请求,在请求开始之前执行业务逻辑,将业务传递给下一个中间件
  • 3、下一个中间件继续,直到所有的中间件都对请求进行了处理
  • 4、API服务接收到中间件处理之后的请求,和数据库交互,请求数据
  • 5、数据库返回数据
  • 6、API处理数据库的数据,然后给客户端
  • 7、中间件拦截API服务的响应数据,将业务传递给下一个中间件
  • 8、下一个中间件继续对响应做处理,直到所有的中间件都处理完毕,再响应给客户端
  • 9、将API服务的数据经过中间件处理之后,响应给客户端

多个中间件执行图解

执行流程:

  • 中间件1处理请求,传递给中间件2
  • 中间件2处理请求,传递给中间件3
  • 中间件3处理请求,传递给API服务
  • 中间件3处理响应,传递给中间件2
  • 中间件2处理响应,传递给中间件1
  • 中间件1处理响应,传递给客户端
相关推荐
栀夏6135 小时前
Kafka 快速入门
中间件
Dylanioucn7 小时前
【分布式微服务云原生】探索Redis:数据结构的艺术与科学
数据结构·redis·分布式·缓存·中间件
一水鉴天1 天前
智能工厂的软件设计 作为“程序Program”的中台
运维·人工智能·机器学习·中间件
加油,旭杏2 天前
【中间件学习】Nginx快速入门(为了配置一个项目)
学习·nginx·中间件
前端 贾公子2 天前
Express内置的中间件(express.json和express.urlencoded)格式的请求体数据
中间件·json·express
-XWB-2 天前
【安全漏洞-中间件】nginx版本号屏蔽
运维·nginx·中间件
小春学渗透2 天前
安全服务面试总结
安全·网络安全·中间件·安全服务
是曹大大3 天前
【RocketMQ】RocketMQ的特性(顺序、事务等)
java·中间件·rocketmq
上官花雨4 天前
第八章 中间件:SpringBoot 集成 Redis
spring boot·redis·中间件
加油,旭杏4 天前
【中间件】fastDFS的相关知识
中间件·fastdfs