排序
【Java 集合框架】TreeMap
TreeMap 是 Java Collections Framework 中的一员,是一个基于红黑树的 NavigableMap 实现。 TreeMap 根据不同的构造函数会对映射进行排序,默认是其键的自然顺序;在创建时如果提供了 Comparat...
被骂了十年的国产软件,却成了世界之最…
点击关注公众号,实用技术文章及时了解 要问现在最受用户吐槽的国产软件,可能是微信,尽管不断上线新功能,但大多被网友吐槽“没用”,并且在一次次的更新中变得更加臃肿,占用内存越来越多,...
开源项目|1000行代码实现http_bench
介绍 http_bench是HTTP(HTTP/1, HTTP/2, HTTP/3, Websocket)压测工具,并支持单机和分布式,为了简洁,直接用1000行左右实现。有兴趣读源码朋友,可以点击【阅读原文】或者访问【开源地址】(当...
使用Frp在内网部署GPT并公网访问
使用 Frp 在内网部署 GPT 并公网访问 引言 或许你看过我之前的文章中有讲过怎么注册 GPT、接入 GPT,甚至我有尝试在公网部署 GPT 项目,但是很无奈很快就被警告了(不要在公网部署 gpt 服务,容...
Netty是如何检测资源泄漏的?
为了减轻 GC 的压力、以及避免频繁向 OS 申请和释放内存,Netty 基于 JeMalloc 思想自己实现了一套内存管理方案。不管是堆内存还是直接内存,都可以交给 Netty 来统一管理,这带来了两个好处,...
微服务框架之争:Quarkus 是 SpringBoot 的替代品吗?
1概述 SpringBoot框架不用多介绍,Java程序员想必都知道。相对来说熟悉Quarkus的人可能会少一些。Quarkus首页放出的标语:超音速亚原子的Java(Supersonic Subatomic Java)。 它是为 OpenJDK H...
实现订单 30 分钟未支付则自动取消,我有五种方案!
引言 方案分析 数据库轮询 JDK的延迟队列 时间轮算法 redis缓存 使用消息队列 1引言 在开发中,往往会遇到一些关于延时任务的需求。例如 生成订单30分钟未支付,则自动取消 生成订单60秒后,给用...
MySQL MVCC你了解吗
什么是MVCC 「multiversion concurrency control」(多版本并发控制)的缩写,顾名思义就是通过多版本对并发进行控制。 MVCC用来做什么 MVCC能提升数据库并发性能,你可将MVCC看成行级别锁的一种妥...
JUC之CompletableFuture(二)
大家好,我是栗子为 上次我们介绍了CompletableFuture的一些基本方法,我们也知道CompletableFuture具有Future接口的优点,同时又提供了更强大的API,这一篇我们就来彻底学完CompletableFuture...
异步批处理教程
书接上回 大数据量、高并发业务怎么优化?(一)[1] 文章中介绍了异步批处理的三种方式,本文继续深入针对前两种进行讲解,并给出代码示例: image.png 一 普通版本,采用阻塞队列 ArrayBloc...








