相看两不厌

HyperLogLog 算法及其在 Redis 中的实现

HyperLogLog 是一个求解集的势(即集合中不重复元素个数)的算法,由于是基于统计学的算法,所以结果必然会存在一定的误差。 在抛硬币游戏中(伯努利试验),如果对方说自己最多能够连续抛出反面 2 次,那么我们由此可以推断对方......

使用 ByteBuddy 动态生成 EasyExcel 数据映射 Bean

阿里的 EasyExcel 可以基于一个 Java Bean 来方便的实现数据的读取和写出,但是 Excel 表头的变更都会引起这个 Java Bean 源码的变动。为了能够动态适应 Excel 表头的变更,本文使用 ByteBuddy 工具类来动态生成 Java Bean,以避免源码级的改动。 使用 ByteBuddy 动态创建......

Dubbo SPI 机制 - 基于 2.7.7 版本

Dubbo SPI 机制涉及到 @SPI、@Adaptive、@Activate 三个注解,ExtensionLoader 作为 Dubbo SPI 机制的核心负责加载和管理扩展点及其实现。本文以 ExtensionLoader 的源码作为分析主线,进而引出三个注解的作用......