NEO*_*NEO 6 serialization protocol-buffers flatbuffers capnproto
我的问题是,如果 FlatBuffers 比 Protobuf 快得多,为什么它没有比 Protobuf 更广泛地使用?
它曾经是一个实验性的东西,但现在似乎已经足够成熟,但尚未广泛使用。似乎人们主要将 Flatbuffers 用于移动应用程序/游戏。为什么会这样?
小智 8
有几个原因:
正如您所提到的,平面缓冲区主要用于应用程序和游戏中。这是因为这是他们最好的应用。由于平面缓冲区速度更快,因此它们的主要应用是在低延迟应用程序中使用它们。它在该领域越来越受欢迎。
当现有技术运行良好时,人们/组织通常不想为新技术投入时间和资源。我个人曾为一家大型组织做过涉及平面缓冲区的概念验证。在做出使用该技术的最终决定之前存在许多障碍。遗留系统仍在使用 xml 和 json,更不用说考虑 protobufs 了。
我认为有多个因素:
小智 6
我只在工作中使用过 Protobuf。我认为这个问题的答案对于所有新技术的采用曲线都是相同的。“如果我们正在使用的东西运行良好,为什么我们应该转换并必须投资于培训并接受新的固有错误风险”。我还发现,只有极少数的开发人员花费大量时间来学习最新、最好的工具。大多数人找到了一些可行的东西,然后继续使用它,直到他们被迫因漏洞或性能要求而做出改变。