Erlang通用二进制格式

UBF是一个让Erlang和外部世界交互的一个框架. 文档和相应的开源库基于Joe Armstrong最初的UBF站点和代码,增加了MIT许可文件,增加了大量的增强和改进.

UBF是一个跨网络转换和描述复杂数据结构的语言. 它包括三个部分:

  • UBF(a) 是一个语言中性的数据描述格式, 粗略地等同于具有良好格式的XML.
  • UBF(b) 是一个描述性的编程语言, 它用于描述UBF(a)中的类型, 以及客户端和服务器之间的协议.
  • UBF(c) 是一个在UBF客户端和UBF服务器之间使用的低级协议(meta-level).

UBF设计用于生产级别的部署和要求24x7x365可靠性的电信级系统.

什么是语言中性?

这是相对于语言独立的二进制格式而言, 它的实现是与特定的语言相关的, 支持的格式定义语言如下:

  • thrift
  • redis
  • jsonrpc
  • eep8
  • bertrpc
  • abnf

可以在项目首页看到多种格式的实现.

参考资料

  1. Erlang Universal Binary Format? Anyone using it?
    http://stackoverflow.com/questions/4731449/erlang-universal-binary-format-anyone-using-it
  2. 项目地址
    https://github.com/ubf/ubf
  3. UBF用户指南
    http://ubf.github.io/ubf/ubf-user-guide.en.html