最新 最热

Java 21 虚拟线程的陷阱:我们在 TPC-C for PostgreSQL 中遭遇死锁

在上一篇关于 TPC-C 的文章中,我们讨论了 Benchbase 项目中 TPC-C 原始实现的一些缺点(尽管如此,它还是很棒)。其中一个缺点是因生成的物理线程太多所导致的并发性限制,我们通过切换到 Java 21 虚拟线程解决了这个问题。后...

2024-01-24
1

实战Arthas:常见命令与最佳实践

当涉及到 Java 应用程序的诊断和调优时,Arthas 是一款备受推崇的开源工具,无论是线上问题的定位,还是实时性能监控和分析,Arthas 都能为您提供强大的支持。...

2024-01-23
1

HTTP压测工具wrk安装与使用

wrk是一个基于C语言开发的用于HTTP性能测试的开源工具,它可以模拟多个并发连接,测量服务器的响应时间和吞吐量,并且会给出较为全面的测试结果

2024-01-22
1

UNO 已知问题 在后台线程触发 SKXamlCanvas 的 Invalidate 且在 PaintSurface 事件抛出异常将炸掉应用

本文记录一个 UNO 已知问题,在 UNO 里面可以利用 SKXamlCanvas 对接 Skia 绘制到应用里面。如果此时在后台线程里面调用 SKXamlCanvas 的 Invalidate 触发界面的重新刷新,但在具体的执行绘制 PaintSurface 事件里面对外...

2024-01-20
1

【Tomcat】《How Tomcat Works》英文版GPT翻译(第十二章)

As you have witnessed in the previous chapters, a context represents a web application and contains one or more wrappers, each of which represents a servlet def...

2024-01-19
1

理解 AQS 和 ReentrantLock

在多线程编程中,同步机制是确保线程安全的关键。AQS(AbstractQueuedSynchronizer)和ReentrantLock是Java中两种常见的同步机制,它们各自具有不同的特性和适用场景。...

2024-01-19
1

如何诊断处理生产环境服务器变慢

在当今的高科技环境下,生产环境服务器的性能问题可能是一个复杂且棘手的问题。当服务器变慢时,可能会对企业的运营产生重大影响,包括客户满意度下降,工作效率降低,甚至可能导致整个系统崩溃。为了解决这些问题,我们需要深入...

2024-01-19
1

Java源码中经常出现的for (;;) {}:理解无限循环

我们平常都会去阅读Java的源码,经常可以在源码中看到for (;;) {}的结构,本文将带你去理解无限循环。

2024-01-19
1

CountDownLatch和CyclicBarrier源码详解

我现在有个场景:现在我有50个任务,这50个任务在完成之后,才能执行下一个函数,要是你,你怎么设计?

2024-01-19
1

如何与死锁斗争!!!

为避免影响业务,应尽可能避免修改线上数据库的字段,因为这可能导致锁表并可能导致死锁。

2024-01-19
1