你说的下游是 Upstream 吧?
2023-02-25 17:59:22 时间
工作中,有一些术语比较容易混淆,聊半天,最后发现双方对术语的理解不一致。这个时候用英文原本的表达或者换一种方式来表述能让沟通更顺畅。
像我们经常说的『上下游』便是经常发生混淆的一对名词。
以前,我经常说『梳理一下我们依赖的下游』,后来发现这种说法是错误的。正确的是:梳理一下我们依赖的上游。
是不是听着很奇怪?
可以这样理解,越是上游的地方,越是离源头更近的地方,源头就是指数据源。
对于互联网服务用户而言,数据沿着源头、上游、下游,一直流到用户的设备上。源头可能是数据库,上游可能是后端服务、下游可能是 gateway。对于某个微服务的 owner 也一样:你的服务做的事就是从上游获取某项数据,然后经过一些加工处理,吐出加工后的数据,数据会流向下游。
有人可能会反问:服务之间的交互,一问一答,请求和响应都有数据,那流向该怎么算?其实这里的数据是指响应数据,是终端用户最终需要的数据:可能是短视频,可能是公众号文章。
我们记住这张图就可以了:
上面这张图来自这篇文章[1],文中介绍了好几种 downstream/upstream,但对于后端研发来说,弄清服务调用间的上下游就足够了。
实在不好区分的,想想 nginx 中的 upstream 配的是什么地址能就回忆起来。
最后,在有可能要频繁说起上下游的场合,一定要先和大家约定好名词的定义。这时用 upstream、downstream 可能会更好一些;或者改叫调用方、被调用方也很清晰。
参考资料
[1]文章: https://reflectoring.io/upstream-downstream
相关文章
- 【愚公系列】2023年01月 Dapr分布式应用运行时-Dapr的安装
- 视频处理系列︱利用达摩院ModelScope进行视频人物分割+背景切换(一)
- SAP UI5 FlexBox Layout 布局的概念和具体使用案例介绍试读版
- 如何配置 jad,让 Eclipse 可以自动显示反编译之后的 .class 源代码
- 使用 SAP UI5 3D Viewer 控件显示 3D 模型效果试读版
- 【Django | 爬虫 】收集某吧评论集成舆情监控(附源码)
- 自建服务器远程游玩PS5不踩坑指南
- Redis发布订阅和事务实现原理
- 第十四届蓝桥杯集训——数组(一维)
- IP协议重点总结(附实例)
- 浅谈单元测试
- 假如面试官问你Babel的原理该怎么回答1
- vivo 服务端监控体系建设实践
- 挖掘研发项目协作痛点 UniPro“串联”人和事
- 振弦采集模块辅助功能寄存器
- [SWPUCTF 2021 新生赛]PseudoProtocols解题思路
- Sensei for Mac(好用的系统优化清理工具) v1.5.7中文版
- Acrobat DC 2020 安装教程(PDF阅读器)PDF编辑器全版本下载
- 自己手写一个redux,
- Acrobat DC 2018 安装教程(附软件)PDF编辑器全版本下载