sbe 详解_内部简单二进制编码(SBE)

SBE(Simple Binary Encoding)是一个针对金融领域的高速序列化库,设计时考虑了硬件特性,如CPU缓存、预取和流水线。本文探讨了SBE如何通过全栈优化、无垃圾或少量垃圾产生、缓存预取、流式访问等策略实现高效性能。此外,还介绍了SBE的不安全API、常量使用和分支免费代码,以减少延迟和提高吞吐量。
摘要由CSDN通过智能技术生成

sbe 详解

SBE是用于金融行业的非常快速的序列化库,在本博客中,我将介绍一些使其快速发展的设计选择。

序列化的全部目的是对消息进行编码和解码,并且有很多可用的选项,例如XML,JSON,Protobufer,Thrift,Avro等。

XML / JSON是基于文本的编码/解码,在大多数情况下都很好,但是当延迟很重要时,这些基于文本的编码/解码就会成为瓶颈。

Protobuffer / Thrift / Avro是二进制选项,使用非常广泛。

SBE也是二进制的,是基于机械同情而构建的,以利用底层硬件(CPU缓存,预取程序,访问模式,管线指令等)的优势。

CPU和内存革命的小历史。

我们的行业看到了功能强大的8位,16位,32位,64位处理器,现在普通的台式机CPU可以执行近数十亿条指令,只要程序员能够编写程序来生成这种类型的负载即可。 内存也变得便宜,获得512 GB服务器非常容易。

我们必须改变编程方式以利用所有这些东西,数据结构和算法也必须改变。

让我们潜入sbe。

全栈方法

大多数系统依赖于运行时优化,但是SBE已采用全栈方法,并且第一级优化由编译器完成。

预算局

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值