作者:臭小子 | 2023-07-17 13:28
似乎以前有更多的二进制协议,因为时间非常慢(拨号).我一直在看到一切都被HTTP和SOAP/REST/XML所取代.
为什么是这样?
二进制协议真的死了还是不太受欢迎?为什么他们会死或不受欢迎?
1> Eric J...:
你只是不能打败二进制
二进制协议总是比文本协议更节省空间.即使互联网速度急剧增加,我们希望传达的信息量和复杂性也随之增加.
您引用的文本协议在标准化,灵活性和易用性方面非常出色.但是,总会存在二进制传输效率超过这些因素的应用程序.
大量信息本质上是二进制的,可能永远不会被文本协议所取代.视频流作为一个明显的例子浮现在脑海中.
即使您压缩基于文本的协议(例如使用GZip),通用压缩算法也不会像围绕特定数据流设计的二进制协议那样高效.
但有时你不必
您看到更多基于文本的协议的原因是因为与广泛应用的数据大小相比,传输速度和数据存储容量确实快速增长.我们人类发现使用文本协议更加容易,因此我们围绕文本表示设计了无处不在的XML协议.当然,我们可以创建XML作为二进制协议,如果我们真的必须保存每个字节,并构建通用工具来可视化和处理数据.
然后再次,有时你真的做
许多开发人员习惯于考虑多GB,多核计算机.如今,即使是典型的手机也让我的第一台IBM PC-XT感到羞耻.仍然存在诸如嵌入式设备之类的平台,其对处理能力和存储器具有相当严格的限制.在处理这些设备时,二进制可能是必需的.
我不知道,我能看到它......