服务调用的演进历史 (www.codedump.info)

【简介】

这个题目稍微有点大,纯粹是一篇科普文,将我所了解到的解决“服务调用”相关的技术演进历史简述一下,本文专注于演化过程中每一步的为什么(Why)和是什么(What)上面,尽量不在技术细节(How)上面做太多深入。

点击查看原文 >>

@技术头条 2024-03-13 13:33 / 0个评论
要不要再学学下面的文章?
协程和线程的历史 (www.addesp.com)
昨天运营商线路出了问题,体验了一把电话线拨号上网一样的网速。

打开浏览器是这样的场景:
先白屏一会儿。
逐渐显示出网页上的全部文字。
卡一会儿。
慢慢地把网页上的所有图片显示出来。

正在无聊地等待网页加载的时候阴差阳错地意识到浏览器这种一边渲染一边下载的工作方式在历史上还促成了协程和线程这一概念的产生。那么就来讲一讲故事吧。
by @技术头条 2023-12-11 23:16 查看详情
开源与 “半开源” 之间的战争和软件的历史一样久远 (linux.cn)
你是否知道 macOS 曾经是开源的?确实,它曾经是。

macOS 的核心基于 Darwin,这是一种 Unix 操作系统。史蒂夫·乔布斯Steve Jobs 回归苹果公司时,引入了他的基于 Unix 的 NeXTStep 操作系统。到了 2000 年,苹果公司逐步放弃了他们的经典 Mac 操作系统,转而支持 macOS Darwin。除了来自 NeXTStep 的部分,Darwin 还大量借鉴了开源的 FreeBSD 和 Mach 操作系统的设计。
by @技术头条 2023-11-06 22:43 查看详情
Unix 历史:一个伟大作品的诞生 (linux.cn)
本文是关于 Unix 及其起源的简短回忆。

Unix 是少数具有独到思想并致力于解决问题的人取得的非凡成就。如果考虑到在创建操作系统当时可用的计算能力和内存量,这个操作系统简直就是一件艺术品。

几十年来,所有这些一步步的进步,最终使我们走到了今天。无论有多少内核、操作系统和以编程语言形式出现的抽象概念,就其本质而言,它们都始于一个单一的来源。

我一直认为程序或代码是人类的思想,是你的逻辑、想法,只是写在 “IF-ELSE” 语句中,以实现一些现实世界的结果。
by @技术头条 2022-09-13 23:30 查看详情
谁动了我的奶酪,通过 git 找出内容变更历史 (droidyue.com)
在日常的开发过程中,一段代码内容被添加,删除都是稀疏平常的事情。这也就造成了我们日常开发工作中会遇到这样两个问题:
1、这个代码内容是谁添加的,是一直存在还是被修改过多次;
2、有一段代码被删除了,是谁删除的呢。
by @技术头条 2022-08-01 00:03 查看详情
Dubbo-go 源码笔记(二)客户端调用过程 (developer.aliyun.com)
有了上一篇文章《Dubbo-go 源码笔记(一)Server 端开启服务过程》的铺垫,可以类比客户端启动于服务端的启动过程。其中最大的区别是服务端通过 zk 注册服务,发布自己的ivkURL并订阅事件开启监听;而客户应该是通过zk注册组件,拿到需要调用的serviceURL,更新invoker并重写用户的RPCService,从而实现对远程过程调用细节的封装。
by @可耐芊小仙女 2020-11-12 10:59 查看详情
黑盒项目之历史原因 (insights.thoughtworks.cn)
很多团队在习惯性的说出“历史原因”的时候,更多的是一种为了掩盖团队当前对这样的做的原因一无所知的说辞。因为项目运行过久,团队成员的更迭,很多项目上存在的问题或者说现状,对于现在的团队成员而言,俨然成了一个黑盒子。
by @Thoughtworks 2020-01-03 18:33 查看详情
OkHttp踩坑记:为何 response.body().string() 只能调用一次? (mp.weixin.qq.com)
想必大家都用过或接触过 OkHttp,我最近在使用 Okhttp 时,就踩到一个坑,在这儿分享出来,以后大家遇到类似问题时就可以绕过去。

只是解决问题是不够的,本文将 侧重从源码角度分析下问题的根本,干货满满。
by @code小生 2019-10-13 23:36 查看详情
只想着一直调用一直爽, 那API凭证泄漏风险如何破? (yq.aliyun.com)
如今各家云厂商都通过给用户提供API调用的方式来实现一些自动化编排方面的需求。为了解决调用API过程中的通信加密和身份认证问题,大多数云厂商会使用同一套技术方案—基于非对称密钥算法的鉴权密钥对,这里的“密钥对”即API凭证,是云上用户调用云服务API、访问云上资源的唯一身份凭证。
by @可耐芊小仙女 2019-04-12 17:00 查看详情
尾调用、优化和 ES6 (linux.cn)
在探秘“栈”的倒数第二篇文章中,我们提到了尾调用tail call、编译优化、以及新发布的 JavaScript 上合理尾调用proper tail call。

当一个函数 F 调用另一个函数作为它的结束动作时,就发生了一个尾调用。在那个时间点,函数 F 绝对不会有多余的工作:函数 F 将“球”传给被它调用的任意函数之后,它自己就“消失”了。这就是关键点,因为它打开了尾调用优化的“可能之门”:我们可以简单地重用函数 F 的栈帧,而不是为函数调用 创建一个新的栈帧,因此节省了栈空间并且避免了新建一个栈帧所需要的工作量。下面是一个用 C 写的简单示例,然后使用 mild 优化 来编译它的结果。
by @技术头条 2018-06-28 12:18 查看详情
让您的运维更可预期(二) - ECS系统事件支持历史事件查询 (yq.aliyun.com)
主动运维又填新功能,全部事件页登场,您可以查看您的实例以及磁盘所发生的历史系统事件,有助于您对资源有个更全面清晰的掌控。
by @幸运的猫耳 2018-05-29 21:17 查看详情