protobuf序列化协议

Protocol Buffers 是一种轻便高效的结构化数据存储格式,可以用于结构化数据串行化,或者说序列化。它很适合做数据存储或 RPC 数据交换格式。可用于通讯协议、数据存储等领域的语言无关、平台无关、可扩展的序列化结构数据格式。

阅读全文>>

常见JSON序列化库性能比较

JSON(JavaScript Object Notation,JavaScript对象表示法,读作/ˈdʒeɪsən/)是一种由道格拉斯·克罗克福特构想和设计、轻量级的数据交换语言,该语言以易于让人阅读的文字为基础,用来传输由属性值或者序列性的值组成的数据对象。很多接口协议中都默认以它为序列化协议,如SpringCloud里面都是以HTTP+JSON的方式来提供服务。

阅读全文>>

async-profiler查找CPU热点

算法新上线的接口,平均耗时增加了20ms。使用jstack一类的脚本出来的堆栈基本上比较平均。很难定位到确切的位置。这种微小耗时监测场景。典型的方式是直接进行CPU热点采样,通常是linux的perf加上perf-map-agent来映射出java的堆栈。这个组合略复杂。我使用的是 async-profiler 。

阅读全文>>

单点登录

分布式登录状态一致性 解决的是同一个域名下的状态,如果一个企业内部存储多个领域的系统,且他们具备不同的特性和域名,又必须提供统一的登录方式。那么这时候单点登录就派上用场了。

阅读全文>>

使用Lombok简化代码

POJO等一系列的java bean最让人诟病的是他们有很多重复的工作存在。比如里面的属性要暴露出去需要写很多的Getter和Setter方法。完全是体力活。Lombok是一个开源库,能够改善这种现状。

阅读全文>>