为何说鸿蒙的软总线是个错误设计?

软总线只是个名字而已,随便起这个没什么好抨击的,换台湾人可能还叫汇排流呢。restful

说软总线是个错误设计指的是它退回了RPC。架构

RPC是个有态的东西,并且是操做语义的,这个自由度太大了,尚未好的抽象,这直接致使ab两点之间只能end-to-end,这个抽象程度是不够的。分布式

b不能是一组服务吗?不能是facade模式同样聚合的吗?a/b能对称吗?重用一个transport?设计

这些都是更宽泛的场景。实际上HTTP有一点历史缘由作得不够纯粹,但restful毫无疑问是正确的(指资源模型和crud);而mqtt在另外一侧,它是资源语义实现了观察者模式,重要的是它虽然也是有态的东西,但态即资源,服务端能够scale。rest

一个系统的架构和通信能力决定了这个系统能走多远,鸿蒙的设计者仅仅是有关个模糊的想法,能够基于wan实现(90年代的)分布式OS的设计理念,可是设计者没设计过系统级通信协议,也不知道系统级的通信协议(例如9P)的设计取舍原则是什么,没有准确的vision固然也不会有正确的设计。资源

使用end-to-end的操做语义RPC设计已经把这个系统限制在没法应对将来场景了,当节点数量多的时候,协同的难度是几何级数增长的。这是20年前的东西,若是RPC是正确的,jini早就统治了世界。qt