Welcome to Mility!

kafka消息堆积和重平衡

线上出现了kafka消息堆积和重平衡 @KafkaListener(topics = KafkaConstant.SUMMARY_TOPIC, containerFactory = "batchKafkaListenerContainerFactory") public void process(List<ConsumerRecord<String, Record>> consumerRecordList, Acknowledgment acknowledgment) { log.info("summary consuming message, size:{}", consumerRecordList.size()); try { //do something } catch (Exception e) { log.error("error... Read more »

Lua5.4 MD5 pure lua

在利用 wrk 进行压力测试时,由于请求需要包含加密参数,因此必须使用 MD5 加密。然而,尝试集成许多大型语言模型(LLM)提供的 MD5 算法实现后,都遇到了兼容性问题(例如,由于版本冲突或缺少 C 模块导致的加载失败)。经过反复搜索和少量修改,我找到了一段纯 Lua 实现的 MD5 算法,该算法经过我的实际测试,证明在 wrk 的 LuaJIT 环境中有效。特此记录,希望能帮助有同样需求的人。 When conducting stress testing using wrk, it is necessary to peform MD5 encryption... Read more »

为什么caffine缓存不生效

代码如下: package org.example.service; import com.github.benmanes.caffeine.cache.Caffeine; import com.github.benmanes.caffeine.cache.LoadingCache; import lombok.extern.slf4j.Slf4j; import org.example.dao.Demo; import org.example.dao.UserReq; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component; import java.util.Collections; import java.util.List; import java.util.concurrent.TimeUnit; /** * @author * @version... Read more »

guava与caffine缓存性能对比:Caffeine快60%

压测代码如下: package org.example.service; import com.github.benmanes.caffeine.cache.Cache; import com.github.benmanes.caffeine.cache.Caffeine; import com.google.common.cache.CacheBuilder; import com.google.common.cache.CacheLoader; import com.google.common.cache.LoadingCache; import org.openjdk.jmh.annotations.*; import org.openjdk.jmh.infra.Blackhole; import org.openjdk.jmh.runner.Runner; import org.openjdk.jmh.runner.RunnerException; import org.openjdk.jmh.runner.options.Options; import org.openjdk.jmh.runner.options.OptionsBuilder; import java.util.concurrent.TimeUnit; /** * Caffeine... Read more »

BFF接口C95低于后端接口原因分析

在实现 BFF(Backend for Frontend)层服务时,观察到后端接口 A 的 C95 延迟为 1006 毫秒,而 BFF 中聚合接口 A 的 C95 延迟仅为 219 毫秒。已知 BFF 无缓存,且未到达 BFF 超时时间,测量点均为 BFF 层前面的网关且统计周期一致。请解释这个现象。 核心解释:并行调用下的概率优势 数学概率分析 假设 4 个后端接口的延迟分布是独立的,且每个接口的 C95... Read more »