你说的下游是 Upstream 吧?

开发 前端
经常说『梳理一下我们依赖的下游』,后来发现这种说法是错误的。正确的是:梳理一下我们依赖的上游。

工作中,有一些术语比较容易混淆,聊半天,最后发现双方对术语的理解不一致。这个时候用英文原本的表达或者换一种方式来表述能让沟通更顺畅。

像我们经常说的『上下游』便是经常发生混淆的一对名词。

以前,我经常说『梳理一下我们依赖的下游』,后来发现这种说法是错误的。正确的是:梳理一下我们依赖的上游。

是不是听着很奇怪?

可以这样理解,越是上游的地方,越是离源头更近的地方,源头就是指数据源。

对于互联网服务用户而言,数据沿着源头、上游、下游,一直流到用户的设备上。源头可能是数据库,上游可能是后端服务、下游可能是 gateway。对于某个微服务的 owner 也一样:你的服务做的事就是从上游获取某项数据,然后经过一些加工处理,吐出加工后的数据,数据会流向下游。

有人可能会反问:服务之间的交互,一问一答,请求和响应都有数据,那流向该怎么算?其实这里的数据是指响应数据,是终端用户最终需要的数据:可能是短视频,可能是公众号文章。

我们记住这张图就可以了:

图片

上面这张图来自这篇文章[1],文中介绍了好几种 downstream/upstream,但对于后端研发来说,弄清服务调用间的上下游就足够了。

实在不好区分的,想想 nginx 中的 upstream 配的是什么地址能就回忆起来。

最后,在有可能要频繁说起上下游的场合,一定要先和大家约定好名词的定义。这时用 upstream、downstream 可能会更好一些;或者改叫调用方、被调用方也很清晰。

参考资料

[1]文章: https://reflectoring.io/upstream-downstream​

责任编辑:武晓燕 来源: 码农桃花源
相关推荐

2020-06-30 07:48:27

SpringMVC

2023-04-27 07:48:53

redis数据库AOF

2021-11-09 14:08:45

DockerDockerfileJava

2014-03-19 09:30:29

LinuxLinux发行版封包人

2020-03-25 10:44:16

位运算操作技巧

2022-01-26 11:04:06

Linux上游upstream下游downstre

2018-05-11 14:39:14

2018-11-12 00:16:21

云计算行业科技

2023-02-10 08:22:43

Unicode统一码万国码

2021-09-02 09:53:42

开发Redis配置

2015-05-15 09:56:26

程序员代码

2015-05-13 13:59:02

码农拒绝

2021-12-16 16:35:46

CSS代码前端

2020-07-03 14:05:26

Serverless云服务商

2022-03-14 08:33:09

TypeScriptJavaScript前端

2017-10-17 12:43:17

前端CSS布局

2021-11-29 18:27:12

Web Wasmjs

2013-10-10 15:41:38

绿色数据中心数据中心

2014-07-15 13:57:53

Java8

2016-11-22 16:34:11

githubgit前端
点赞
收藏

51CTO技术栈公众号