zhejiang wenzhou skinshoe wet,rain flooding water will not fat!
竟然在公司茶水间沙发上睡着了,错过了晚饭时间,就索性不吃了。梦魇让我惊起而长嗟,然后有一点失落。
思考了一些关于云计算和CDN的点滴,作文以记之。
云计算 把所有的计算都推向了远端,而 CDN 貌似又把数据拉到了就近。
云计算说的是计算过程越远越集中越好,CDN部分的意思说的是,结果离你越近越好!
看似矛盾打架的双方其实配合得非常和谐!云端负责生产数据,而CDN并不生产数据,CDN只是数据的搬运工。
但是,只要在物理上存在距离,就会遇到不可规避的问题,即 光速的极限 !
在继续讨论之前,先看一个我昨天写的一篇文章的评论:
对政府企业用户,计算机用于计算和存储比较多,适用于云上计算。对个人用户作为体验消费的产品,比如游戏这种实时渲染的需求,应该还是本地计算为主了
现在一个要回答的问题就是 “个人消费产品的实时渲染这种需求到底能不能上云?”
我们假设,最近的CDN节点离你的个人消费终端屏幕的距离是1000米,同时假设该CDN节点可以帮你完成渲染(虽然它本来不该干这个事,这个事是由更远端的“云”来做的),而你的终端机渲染组件距离屏幕5厘米,那么运送一个字节的数据,两者完成时间便相差20000倍!!这便是光速的极限造成的不可弥合的差距!
这里至少还没有考虑传输介质造成的速率损耗,以及丢包重传带来的效能损耗!所以,正常来讲,差距应该远不止20000倍!
从这个数据上看,云计算/CDN在给人带来的视听体验上来讲,和本地计算机相比,简直弱爆了!云计算确实仅仅适合可以解放企业算力和存储开销的场合,并不适合个人所渴望的那种所见即所得体验的场合。
…
前段时间写了一篇文章:
流水线式的TCP中继代理是如何提高吞吐的:https://blog.csdn.net/dog250/article/details/83997773
并不仅仅限于TCP,事实上所有的传输协议都 应该 是逻辑流水线化的,即一个窗口的数据源源不断填满整个管道。如果逻辑流水线工作的不好,比如像TCP协议那样,那么就可以引入中继代理来实现物理流水线。
还是上面那个渲染的例子,也就是说,虽然本地渲染和远端渲染在距离上相差了20000倍,但是由于数据并不是基于字节停等传输的,所以这里的20000倍的差异可以 一次性的聚集在首字节延迟 上。过了首字节,后面的渲染和传输应该都是源源不断地进行,和物理距离毫无关系!
首字节延迟差异无法采用技术手段弥补,只能不断缩短物理距离,但是可以从心理学上做做文章,比如在第一个字节到达前插播早就cache在本地的广告,或者诸如此类的手段。
且慢!
上面说了这么多,有个前提,这些都是在 理想环境 的推论!所谓的理想环境就是网络上无需运作任何拥塞控制算法,速率按照back-to-back发送。但是在实际环境中,这是不可能的!
实际的网络环境一定是一个统计复用的博弈环境,但凡统计复用就一定有统计损耗,比如泊松分布的序列/时间空洞是无法弥补的,所以说,理想环境几乎永远无法到达只能无穷逼近。
在 非理想环境 中,必然会有某种拥塞控制算法在起作用,如果没有集中化的全局控制,仅仅依靠我们现有的TCP/IP分布式网络,任何局部的拥塞控制都必然是 自启发式 的。
这种启发式的管控必然要基于传输速率或者某种事件来采样,比如传统的CC算法用丢包来识别拥塞,那么到底是CC避免了丢包还是CC导致了丢包?这似乎永远是一个因果测不准的问题,所以说CC必然导致效能的损耗!这种损耗即便全网SDN也无法彻底消除。
所以说,在共享复用的环境中,物理距离的差异似乎非常难以弥补,远端渲染这种依然是不太可行的。
那么怎么办?
突破光速极限带来的体验延迟,除了不断缩短物理距离到本地之外,还有一种方法,即寄希望于 量子通信,我说的不是那种噱头式的量子通信,而是真正的,基于量子纠缠理论的编码和通信技术!
量子纠缠是个好东西,也许所谓的心灵感应,第六感这种无法解释的玩意儿真的基于量子纠缠的呢。
量子物理目前来讲还处在非常初级的能看到但无法解释的截断,虽然在实验中确实发现了量子纠缠,比如还有薛定谔的猫,海森堡测不准等等,但是背后到底隐藏着什么能用现代理论解释的东西,至今还不知道。这应该是理论物理学的下一阶段的突破口吧…《三体》里面的很多东西,希望能在现实中看到,比如还有降维打击(把虫子踩扁不知道算不算)。
我们可以把CDN看作是云端产出的输送机制,如果我们把云看作是发电站的话。
其实在电力供应领域,一开始也是面临长距离输电的损耗问题,最后通过升压输送得以解决或者至少是缓解了损耗。我们可以把大家小区门口的变压器,以及城市区县的变电站看作是电力CDN的一级,二级缓存节点。
道理是一样的,如果云计算资源真的就是水电燃气一样的基础设施,那么远距离输送问题就一定能解决。拭目以待!
最后说点关于昨晚玩的serverless的话题。
早上看了一篇公众号推送的文章:
2018 重温 Unix 哲学: https://linux.cn/article-10282-1.html
确实是印证了 日光之下,并无新事。
像serverless这种,其实背后的思想和UNIX哲学不谋而合。
浙江温州皮鞋湿,下雨进水不会胖。