关于『背压』这个错误翻译

简介: 『背压』英文全称是back pressure,这是一个出自物理学的词汇,在传统的工程领域甚至医学界都有背压的概念,后来被引入到了计算机界。然而个人认为背压其实是个被大众认可的、主流的错误翻译!

『背压』英文全称是back pressure,这是一个出自物理学的词汇,在传统的工程领域甚至医学界都有背压的概念,后来被引入到了计算机界。然而个人认为背压其实是个被大众认可的、主流的错误翻译!


back有『后背』的意思,pressure是压力。所以back pressure不知从何时开始被译作了『背压』。但其实back也有『反方向』的含义,比如go back(回去)、come back(回来)、back away(后退)。对于back pressure而言,『反向』的语义比『后背』更准确。


你看机器学习中有个概念:back propagation。此二者back语义是相同的,但它就被译作『反向传播』,并没有被翻译成背传。所以我个人感觉『反向压力』是一个不错的称呼,虽然似乎也有看到这个叫法,但真的远远不如背压 脍(误)炙(人)人(子)口(弟)了……


微信图片_20220528171059.jpg




解释一下back pressure,看一下百科中背压的基础定义:


通常是指运动流体在密闭容器中沿其路径(譬如管路或风通路)流动时,由于受到障碍物或急转弯道的阻碍而被施加的与运动方向相反的压力。

上述定义可能还稍微抽象,再看个具体的例子。发动机有一个概念叫做排气背压,同样看一下百科的定义:


背压大,排气阻力就大,会降低发动机动力。
背压小,排气阻力就小,会增加发动机动力。

我个人总结就是:施方 向 受方 施加某种压力,然后收到了受方的反馈,从而促使施方调整施加压力的强度。


背压概念传播较广,早就从物理学和机械领域泛化,进入到了其他领域。然而不管是哪个领域,背压几乎都可以认为是和『流控』相关的。这下你或许可以听懂了。下面就拿我所熟知的计算机领域来谈一谈背压。背压并不是某种具体的技术,而是一种思想或者说策略。


计算机网络的TCP协议中有流量控制功能,核心实现就是利用『滑动窗口』,其实滑动窗口就应用了背压的策略(但也不能说滑动窗口就是背压。TCP滑动窗口更具体也更复杂)。在网络中,发送方向接收方源源不断地发送数据,是需要考虑接收方的处理能力的,否则容易导致服务雪崩,防雪崩大概就两大类。一种是接收方在处理能力超限之后直接拒绝或丢弃发送方发来的数据;另外一种就是不停地通知发送方自己的处理能力有多少,从而调控发送方的发送频率或大小。后者就是背压的思想。


通过这个描述你也可以发现,不仅仅是TCP的流量控制。对于消息队列或者其他任何生产者-消费者的场景也都可以采用背压的策略。


除了上面这些微观的例子,在宏观一点的业务场景中,背压策略也一直在使用当中,只是你或许不知道这个看似普普通通的做法有个学名叫背压而已。比如在推荐系统中控制同一个创作者的视频、图文等素材以一种被限定的频率被在用户消费。请注意这里不是说某创作者的素材以被约束的频率出在用户时间线(这个实现相对简单),而是说以被限定的频率被消费,只出现在用户的时间线,但用户没有点开观看不算消费。然而用户是否点击观看我们是无法事先得知的,只能借助日志流不停地后验反馈用户的点击观看行为,然后调整接下来创作者的素材出现在用户时间线中的频率!同理,在CPC广告(点击扣费的广告)系统中,广告只有被点击才会扣除广告主的预算,仅展示广告不扣费。此时如何匀速(或者其他限定速度)消耗广告主的预算,避免短时间内广告主预算耗尽(可能广告主希望自己的广告在不同时段都能曝光),其实现过程也大致同理。




除了『反向压力』外,back pressure也有被翻译成『反压』或者『回压』,尽管都小众,但这些都比背压要清晰准确的多。


一点拙见,可能贻笑大方了。




相关文章
|
9月前
|
C# Android开发 iOS开发
2025年全面的.NET跨平台应用框架推荐
2025年全面的.NET跨平台应用框架推荐
349 23
|
9月前
|
监控 安全 网络安全
深入解析PDCERF:网络安全应急响应的六阶段方法
PDCERF是网络安全应急响应的六阶段方法,涵盖准备、检测、抑制、根除、恢复和跟进。本文详细解析各阶段目标与操作步骤,并附图例,助读者理解与应用,提升组织应对安全事件的能力。
1160 89
|
12月前
|
机器学习/深度学习 数据挖掘 数据处理
深度学习之卫星图像中的环境监测
基于深度学习的卫星图像环境监测是指通过使用深度学习模型处理和分析来自卫星的遥感数据,以实现对地球环境的自动化监测和分析。这项技术极大提升了环境监测的效率、精度和规模,应用于气候变化研究、生态保护、自然灾害监测、城市扩张评估等多个领域。
475 1
|
安全 Linux Android开发
Linux CFI (Control-flow integrity)技术相关资料汇总
Linux CFI (Control-flow integrity)技术相关资料汇总
|
Kubernetes Java 开发工具
Kubernetes部署项目流程(新手上线新版本服务整个流程)
【8月更文挑战第1天】Kubernetes(k8s)新手上线新版本服务整个流程
322 5
|
Java 数据库连接 API
技术经验解读:三、TransactionalTemplate处理全局事务
技术经验解读:三、TransactionalTemplate处理全局事务
312 0
|
定位技术 容器
vue3高德地图+搜索+点击获取经纬度
vue3高德地图+搜索+点击获取经纬度
|
JavaScript 前端开发 关系型数据库
7 种最棒的 Vue Loading 加载动画组件测评与推荐 - 穷尽市面上所有加载动画效果(Vue loader)类型 - 卡拉云
Vue Loading 加载动画组件 (Vue-loader) 看起来很简单不重要,实际上它是保证用户留存的关键一环。选择好 Loading 加载动画,用户留存率翻倍。本文介绍 7 种不同的加载动画 UI 效果(Vue loader),每一种都有其对应的使用场景。举例,旋转加载动画适合短时间加载,旋转加载还能更细分,比如在按钮上的旋转加载,适合提交数据的极短时间,旋转动画在全局的适合多表格数据加载,旋转动画图片可自定义的适合高度定制化的 APP / 网站等。再举例,进度条类的加载动画适合长时间加载,进度条类也可以更细分,比如有蒙层的进度条,有加载进度条带取消按钮,有加载进度条放在网页顶部,
2713 0
|
SQL 存储 关系型数据库
binlog 日志的三种格式
binlog 日志的三种格式