mirror功能

news2024/11/29 10:38:16

实现方式

mirror逻辑的工作阶段:

ngx在log phase之后(在ngx_http_free_request处调用)已完成向client端返回response,在log phase之后完成close connection(短链接),在该阶段处理mirror逻辑不会对主请求造成阻塞。

发往mirror upstream的流量获取:

request结构中有向后端upstream转发的数据缓存,并且request和内存资源独立于底层connection的内存资源,因此可复用request结构及内存(待mirror之后释放)作为向mirror upstream转发的数据来源,复用该数据可最大程度减少重新组包或数据copy带来的性能损耗。

r->upstream→request_bufs:原向后端转发,组成的http头

r→request_body:收到的http body

注意:复用该方法会有一个问题在于如果主请求不能转发到后端,则不会生成该http 头数据。例如 404 not found的请求,因为找不到指定路径,所以不会走proxy逻辑生成到upstream的请求数据。

逻辑顺序

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/792948.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Redis】高级篇: 一篇文章讲清楚Redis的单线程和多线程

目录 面试题 Redis到底是多线程还是单线程? 简单回答 详解 Redis的“单线程” Redis为什么选择单线程? 后来Redis为什么又逐渐加入了多线程特性? Redis为什么快? 回答 IO多路复用 Unix网络编程的5种IO模型 主线程和IO…

温湿度传感器的工作原理及应用领域你了解多少呢?

传感器是一种将物理量转换为电信号的装置,用于检测温度、湿度、压力、光强、震动等物理量。它能够将检测到的物理量转换为电信号,并输送到计算机、单片机等设备进行分析和处理。生产生活中,不同的场所和环境对温湿度有着特殊要求,…

看完即会,抓取微信小程序数据包教程

在给VIP学员答疑的时候,有很多小伙伴问到能不能抓取到微信小程序数据呢?答案当然是肯定的,通过Fiddler或者Charles这些主流的抓包工具都可以抓得到,在IOS平台抓取微信小程序和https请求都是一样的设置,接下来给大家通过…

【代码随想录day20】验证二叉搜索树

题目 给你一个二叉树的根节点 root ,判断其是否是一个有效的二叉搜索树。 有效 二叉搜索树定义如下: 节点的左子树只包含 小于 当前节点的数。 节点的右子树只包含 大于 当前节点的数。 所有左子树和右子树自身必须也是二叉搜索树。 思路 最开始想简单…

Linux 学习记录58(ARM篇)

Linux 学习记录58(ARM篇) 本文目录 Linux 学习记录58(ARM篇)一、GIC相关寄存器1. 系统框图2. 中断号对应关系 二、GICD寄存器1. GICD_CTLR2. GICD_ISENABLERx3. GICD_IPRIORITYRx4. GICD_ITARGETSRx5. GICD_ICPENDRx 三、GICC寄存器1. GICC_PMR2. GICC_CTLR3. GICC_IAR4. GICC_…

JAVA面试总结-Redis篇章(五)——持久化

Java面试总结-Redis篇章(五)——持久化 1.RDBRDB全称Redis Database Backup file (Redis数据备份文件),也被叫做Redis数据快照。简单来说就是把内存中的所有数据都记录到磁盘中。当Redis实例故障重启后,从磁盘读取快照文件&#x…

持续贡献开源力量,棱镜七彩加入openKylin

近日,棱镜七彩签署 openKylin 社区 CLA(Contributor License Agreement 贡献者许可协议),正式加入openKylin 开源社区。 棱镜七彩成立于2016年,是一家专注于开源安全、软件供应链安全的创新型科技企业。自成立以来&…

短视频账号矩阵系统源码开发部署路径

一、短视频批量剪辑的开发逻辑算法 1.视频剪辑之开发算法 自己研发视频剪辑是指通过对视频素材进行剪切、调整、合并等操作,利用后台计算机算法,进行抽帧抽组抽序进行排列以达到对视频内容进行修改和优化的目的。自己研发的视频剪辑工具可以通过后台码…

系统集成项目管理工程师挣值分析笔记大全

系统集成项目管理工程师挣值分析笔记大全 挣值分析是一种项目管理技术,用于量化和监控项目绩效。它通过比较计划值(PV)、实际成本(AC)和挣值(EV)三个参数来评估项目的进展情况和成本绩效。 挣值…

系统架构设计师-软件架构设计(3)

目录 一、软件架构风格(其它分类) 1、闭环控制结构(过程控制) 2、C2风格 3、MDA(模型驱动架构 Model Driven Architecture) 4、特定领域软件架构(DSSA) 4.1 DSSA基本活动及产出物…

《CUDA C++ Programming Guide》第一章 CUDA介绍

第一章 CUDA介绍 1.1 使用GPUs的好处 在相同的价格和功耗范围内,图形处理器 GPU 比 CPU 提供了更高的指令吞吐量和内存带宽, 许多应用程序利用这些更高的功能在 GPU 上比在 CPU 上运行得更快。相比较其他计算设备,如 FPGA,也是非常节能的&a…

协议和模型

1 规则 1.1 通信基础知识 不同网络的规模、形状和功能都存在很大差异。它们可以复杂到通过互联网来连接设备,也可以简单到直接将两台计算机用一根电缆连接,或者是介于这两种之间。然而,只是完成终端设备之间的有线或无线物理连接并不足以实…

MATLAB基础知识回顾

目录 1.帮助命令 2.数据类型 3.元胞数组和结构体 4.矩阵操作 4.1 矩阵的定义与构造 4.2 矩阵的四则运算 4.3 矩阵的下标 5.程序结构 5.1 for循环结构 5.2 分支结构 7.基本绘图操作 7.1.二维平面绘图 6.2 三维立体绘图 7.图形的保存与导出 8.补充 语句后⾯加;的作…

Kaggle图表内容识别大赛TOP方案汇总

赛题名称:Benetech - Making Graphs Accessible 赛题链接:https://www.kaggle.com/competitions/benetech-making-graphs-accessible 赛题背景 数以百万计的学生有学习、身体或视力障碍,导致人们无法阅读传统印刷品。这些学生无法访问科学…

人机合一Linux

未来云系统成为主流,维护电脑这种充满时代特性的技术,完全不重要了。 无论是学习还是工作,电脑都是IT人必不可少的重要武器,一台好电脑除了自身配置要经得起考验,后期主人对它的维护也是决定它寿命的重要因素&#xff…

【01trie】CF1851F

Problem - F - Codeforces 题意: 思路: 首先最大异或对可以用01trie解决 trie树入门_lamentropetion的博客-CSDN博客 ai xor x 和 aj xor x 都必须为1 因此可以转换为 ai 和 aj 最小异或对问题 改一下01trie的板子即可 主要修改部分在query上 p…

如何把视频中的背景删掉,AI抠像,瞬间换背景!

不用绿幕也能快速抠除视频背景。一个可以去除视频背景的AI智能抠像工具,上传视频后会自动去除背景,支持单人、多人等各类场景,智能扫描识别,发丝级细节处理,快捷高效。 随着AI 抠像技术的不断成熟和普及,我…

5-7月大更新!EasyOps®全平台34+新特性齐上线~

为了提供更好的产品使用体验,优维从未停止更新升级的脚步。在5-7月份,EasyOps全平台更新上线34新功能,涉及Hyperlnsight超融合监控、CMDB、DevOps、AutoOps、ITSM、公共服务,在不断的技术创新过程中,进一步加速IT运维效…

存算一体化(Processing in Memory, PIM)入门

一、 存算一体化 概念: 简单来说就是将存储资源中嵌入计算能力,以新的运算架构进行二维和三维矩阵乘法/加法运算。这样减少了数据频繁移动带来的延迟和能耗方面的开销。 背景: 虽然多核(例如CPU)/众核(例…

视频监控综合管理平台EasyCVR多分屏默认播放协议的配置优化

视频监控综合管理平台EasyCVR具备视频融合汇聚能力,TSINGSEE青犀视频平台基于云边端一体化架构,可支持多协议、多类型设备接入,包括:NVR、IPC、视频编码器、无人机、车载设备、智能手持终端、移动执法仪等。国标GB28181视频平台Ea…