Caffeine和Disruptor 标记下-有空再写经过

高性能缓存-Caffeine W-TinyLFU 频率记录的核心 LRU与LFU的对比 LRU(Least recently used,最近最少使用) 算法根据数据的历史访问记录来进行淘汰数据。 LFU(Least frequently used,最近最不常使用)算法根据一段时间数据的历史访问记录来进行淘汰数据。 试想一下在0-10分钟内A数据访问量为1000,B数据访问量为20,而在10-20分钟的时候,B访问量为500,而... 阅读详情

Spring Boot缓存实战 Caffeine
https://www.jianshu.com/p/c72fb0c787fc/

Disruptor 介绍
https://blog.youkuaiyun.com/wwwzhouzy/article/details/119515921
SpringBoot Disruptor 简单封装
https://my.oschina.net/ymgjava/blog/5519681

烽火中原H5背后的技术架构:揭秘高并发国战手游的服务器设计 本文深入解析了《烽火中原H5》高并发国战手游的服务器架构设计,重点探讨了三端同步技术、Java高并发战斗系统及缓存优化策略。通过Cocos Creator实现H5、iOS、Android三端无缝体验,采用Netty+Disruptor架构处理5000人同屏战斗,结合多级缓存体系保障数据一致性,为开发者提供了高并发手游设计的实战参考。 阅读详情

相关推荐

数据结构课程设计实战:从零构建一个高并发航空票务系统核心模块

本文详细介绍了如何从零构建一个高并发航空票务系统的核心模块,涵盖数据结构选型、高并发优化、分布式锁实践等关键技术。通过哈希表+跳表组合优化航班查询,分段锁提升余票管理效率,以及异步订单处理方案,实现工业级性能。适合计算机专业学生和开发者学习高并发系统设计。

weixin_33824385的博客 300

新一代缓存Caffeine,速度确实比Guava的Cache快

我想把记忆缓存起来,等再次见到你,就能够很快认出你。 能够说出这么有哲理的话,得益于我对缓存的理解,以及对它的看重。没有了缓存,我的人生就没有了意义。 缓存是非常重要的,工作中大部分工作可以说是和缓存打交道。由于使用广泛,所以针对缓存系统的任何优化,如果能够提高一丁点儿性能,就会让人无比兴奋。 很长一段时间,我都在用Guava的LoadingCache。它和ConcurrentHashMap是非常像的,但在其上封装了一些好用的逐出策略和并发优化,就显得好用的多。 今天主要说的是Caffeine...

LeZiJie的博客 704

Caffeine 和 Guava, 本地缓存必备!

因为。

734

EhCache、GuavaCache和Caffeine之间的性能

Guava Cache Google Guava工具包是一个非常方便易用的本地化缓存实现,基于LRU算法实现,支持多种缓存过期策略。Guava在每次访问缓存的时候判断cache数据是否过期,如果过期,这时才将其删除,并没有另起一个线程专门来删除过期数据。内部维护了2个队列accessQueue和writeQueue来记录缓存中数据访问和写入的顺序。访问缓存时,先用key计算出hash,从而找出所在的segment,然后再在segment中寻找具体数据,类似于使用ConcurrentHashMap数据结构来

搬砖老农工的博客 3103

K型热电偶分度表读取方法

K型热电偶分度表读取方法

guaizaiguaizai的博客 5888

【QEMU系统分析之TPM篇(一)】

本文以 QEMU 8.2.2 为例,分析其 TPM-emulator 模块的实现,并为 QEMU 添加 Windows 平台的TPM 模拟器的支持。

David唐辉的博客 1190

Disruptor的应用-->发送消息

disruptor log4j2

悬崖边的耗子的博客 1279

ROS2实战:打造智能巡检机器人的关键技术与实现

本文详细介绍了基于ROS2和Navigation2构建智能巡检机器人的完整实战流程。通过设计主从协作的事件驱动架构,实现了机器人在已知地图中的自动导航、定点语音播报和环境图像采集功能。文章涵盖了从环境搭建、仿真配置到核心控制节点、语音服务与图像记录模块的代码实现,为开发者打造实用的自动巡检机器人提供了清晰的技术指南。

weixin_29031057的博客 222

京东返利平台实时佣金计算引擎:基于Disruptor的无锁队列与内存计算架构设计

经过实测,在32核CPU服务器上,基于Disruptor的实时计算引擎单机吞吐量突破50万QPS,平均处理延迟低于2毫秒,P99延迟控制在10毫秒以内。在我们的架构中,京东联盟推送的原始订单报文被快速封装为事件对象,投入RingBuffer,随后由多个消费者线程并行处理。为了突破这一性能瓶颈,省赚客APP研发团队重构了核心计算引擎,引入LMAX Disruptor框架,构建了基于无锁环形队列(RingBuffer)与纯内存计算的实时处理架构,将单笔订单的佣金计算延迟压缩至毫秒级。对于低延迟场景,我们选用。

微赚淘客开发者博客 535

79.ScottPlot的MVVM实现 C#例子 WPF例子

在你的 WPF 窗口的 XAML 文件中,定义一个,并将其Content属性绑定到 ViewModel 中的属性。这样可以将WpfPlot控件动态绑定到 ViewModel。

S13461120713的博客 2568

PlutoSDR在matlab中的环境配置(包括驱动和硬件支持包)

双击下载到的驱动,除了点击接受协议和设置安装路径,其他只要点击下一步或者安装即可。登录或者注册你的账号,选择你的matlab版本(这里我的是2023b),点击下一步。设置安装路径,并选择我接受,点击下一步,即可安装完成,并在安装路径中得到。完成后,打开设备管理器,在端口和通用串行总线设备一栏,即可看见下图。点击进入,选择相应的系统安装包,这里我选择的Windows。可看到我们要安装的Pluto支持包,安装即可。右击桌面matlab,选择打开文件所在位置。右上角搜索pluto,选择并点击下一步。

weixin_53160338的博客 4864

京东618大促压测时自研中间件暴露出的问题总结,压测级别数十万/秒

前天618大促演练进行了全链路压测,在此之前刚好我的热key探测框架也已经上线灰度一周了,小范围上线了2500台服务器,每秒大概接收几千个key探测,每天大概2-4亿左右,因为量很小,所以框架表现稳定。借着这次压测,刚好可以检验一下热key框架在大流量时的表现。毕竟作为一个新的中间件,里面很多东西还是第一次用,免不得会出一些问题。 压测期,我没有去扩容热key的worker集群,还是平时用的3个16C+1个4C8G的组合,3个16核是是主力,4核的是看上限能到什么样。 由于之前那一周的平稳表现,导致我有

tianyaleixiaowu的专栏 1万+

从入门到实战:openEuler 系统管理与运维笔记(持续更新)

本文为openEuler系统管理与运维的实战笔记,从CentOS迁移者视角切入,详细介绍了openEuler的生态兼容性、内核优化及安全特性。内容涵盖系统安装规划、虚拟机部署、基础命令操作、文件系统管理以及用户权限配置等核心运维技能,旨在帮助读者快速上手并掌握这一企业级操作系统的日常管理。

weixin_29207149的博客 221

程序员撕开京东 618 大促压测的另一面 | 原力计划

作者 | 天涯泪小武责编 | 王晓曼出品 | 优快云博客前天618大促演练进行了全链路压测,在此之前刚好我的热key探测框架也已经上线灰度一周了,小范围上线了几千台服务器,每秒大概接收...

优快云资讯 2910

GEE土地分类:土地分类精度评定和分类后影像进行(Kmeans,Gmeans,SNIC (Simple Non-Iterative Clustering)聚类分析和滤波(focal_mode)分析

使用聚类分析和滤波分析来进一步处理土地分类后的影像数据。聚类分析可以帮助您识别影像中的相似区域。您可以使用聚类算法,如K均值聚类或层次聚类,将像素分组到具有相似像素值的群集中。这可以帮助您更好地理解图像中的空间模式和结构,并可能揭示有用的信息。滤波分析可以帮助您平滑图像并去除噪声。常见的滤波器包括中值滤波器和高斯滤波器。这些滤波器可以帮助您消除图像中的随机变化,并使其更易于解释和分析。

此星光明博客 2516

摇骰子、抽奖转盘酒桌游戏 人生重启模拟器小程序源码分享-开通流量主躺着赚钱

摇骰子、抽奖转盘酒桌游戏 人生重启模拟器小程序源码分享-开通流量主躺着赚钱

向宇的博客,专注php/web全栈 unity游戏开发,欢迎大家评论纠错 1650

java压测请求线程数_程序员撕开京东 618 大促压测的另一面 | 原力计划

作者 | 天涯泪小武责编 | 王晓曼出品 | 优快云博客前天618大促演练进行了全链路压测,在此之前刚好我的热key探测框架也已经上线灰度一周了,小范围上线了几千台服务器,每秒大概接收几千个key探测,每天大概几亿左右,因为量很小,所以框架表现稳定。借着这次压测,刚好可以检验一下热key框架在大流量时的表现。毕竟作为一个新的中间件,里面很多东西还是第一次用,免不得会出一些问题。压测期,我没有去扩...

weixin_39838829的博客 98

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

高频交易系统加速秘籍:Java如何实现50μs微秒级延迟?5大技术深度剖析!

本文探讨了Java在高频交易系统中的性能优化方案。核心挑战在于微秒级延迟要求,传统Java存在GC暂停、内存拷贝和线程调度三大瓶颈。文章提出五大加速秘籍:1)采用ZGC/Shenandoah GC将GC停顿降至1ms以下;2)使用堆外内存规避GC;3)利用Netty实现零拷贝网络通信;4)以Disruptor无锁队列替代传统BlockingQueue;5)结合JNI调用C++实现关键路径优化。实践表明,优化后系统延迟可从毫秒级降至微秒级,单日利润提升显著。通过针对性调优,Java完全能够胜任高频交易场景的低

java专栏 1619

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

高性能ChatGPT聊天机器人服务的设计与实现

一个艺术成分很高的ChatGPT聊天机器人服务的设计与实现

bossfriday - 个人博客 2849

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

Java+SpringBoot构建个性化智能学习系统实践

个性化学习系统通过机器学习算法和知识图谱技术,实现教育资源的智能匹配与动态调整。其核心技术原理包括用户行为分析、内容相似度计算(TF-IDF算法)和协同过滤推荐(Apache Mahout)。在Java技术栈中,SpringBoot框架提供了稳定的微服务基础,结合MyBatis-Plus等组件可快速构建高可用教学平台。典型应用场景包括自适应习题推荐、学习路径优化等,其中基于Elo评级体系的难度调整算法可提升40%以上学习效率。本文以实际项目为例,详解了从内存泄漏排查到高并发优化的全链路开发经验,特别分享了使

weixin_34348174的博客 286

一次电商秒杀压测复盘:从 800ms 到 120ms 的链路优化实战

2026 年 3 月,我们团队负责支撑某电商平台「会员日秒杀」活动的技术保障。活动前一周,压测团队反馈核心下单接口平均响应时间高达 800ms,95 分位甚至突破 1.5s,远超出 200ms 的 SLA 要求。更棘手的是,在模拟 5000 QPS 的流量冲击下,MySQL 主库 CPU 飙升至 90%,Redis 缓存命中率骤降至 65%,多个服务出现线程池打满告警。

Sobremesa_k的博客 675

Java智能客服机器人性能优化实战:从架构设计到并发处理

Java智能客服机器人性能优化实战:从架构设计到并发处理。

2600_94959955的博客 379

2024全网最Mpsc 无锁队列专题(25秋招走起~)

MpscQueue由一系列数组构成,数组的最后一个元素指向下一个数组,形成单向链表。MpscQueue全程无锁化,非阻塞,相较于JDK提供的同步阻塞队列,性能有很好的提升,这也是Netty后来的版本将任务队列替换为JCtools的重要原因。在生产过程中,它用到了大量的CAS操作,对于需要做并发控制的地方,确保只有一个线程会执行成功,其他CAS失败的线程会自旋重试,全程都是无锁非阻塞的。不管是扩容,还是等待元素被填充到数组,这些过程都是会极快完成的,因此短暂的自旋会比线程挂起再唤醒效率更高。

Wangzc_1116的博客 1546

【无标题】

思路:通过记录,在同一轮会话中采用ConcurrentHashMap<String, AtomicInteger>挂载在上下文中,记录工具的调用次数,将工具的调用次数喂给AI同时,通过AOP切面,每次调用前检查改工具的剩余配额,超过了就阻断。先看grafana大盘,看看是不是这一个用户出现了这样的问题,其次我觉得直接定位这个用户,从表中拿出这个用户和AI进行对话的记录以及我的记忆压缩是否正常,看看是否是上下文过长的原因,同时这个用户的是不是在调用过程中出现了AI工具的幻觉?看看是不是工具的循环调用。

2301_80084989的博客 226

JGrowing技术选型策略:5个步骤教你为项目选择合适的技术栈

在软件开发中,技术选型是决定项目成败的关键环节。JGrowing作为Java成长路线的开源项目,不仅涵盖Java核心技术,还包含分布式系统、缓存策略、并发编程等多领域知识。本文将结合JGrowing项目中的实践经验,分享一套系统化的技术选型方法论,帮助开发者在复杂的技术生态中做出最优决策。 ## 一、明确业务需求与技术目标 技术选型的第一步是深入理解业务场景。不同项目对性能、可扩展性、安全性的

gitblog_01178的博客 722

从技术堆砌到精准架构:Spring Boot项目依赖瘦身实战

在软件工程实践中,技术选型与架构设计是决定项目长期可维护性的关键。其核心原理在于遵循KISS与YAGNI原则,通过最小可行方案满足当前业务需求,避免过度设计。这一理念的技术价值在于降低系统复杂度、提升开发效率、减少运维成本,并增强团队对核心技术的掌控力。常见的应用场景包括初创项目技术栈规划、遗留系统重构以及团队技术债务治理。本文以Spring Boot项目为例,聚焦于依赖管理与架构简洁性,通过分析典型的技术堆砌案例,探讨如何通过评估业务场景、裁剪冗余依赖、采用轻量级替代方案(如用Caffeine替代Redi

weixin_34241036的博客 444
上一篇: Swagger2时启动控制台输出大量 Generating unique operation named
下一篇: GO-IM系统
牧竹子
博客等级 码龄17年 572粉丝 233原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值