Dojo
话题
新佳
订阅
极道
元认知
元逻辑
元设计
元编程
元语言
程序性能调优教程
OpenJDK的“CRaC检查点协调恢复” - foojay
Java如何协调代码的快速启动和实时优化两者之间平衡?Java虚拟机(JVM)的一个伟大之处在于,它能够使Java应用程序的性能适应其使用方式。它可以找出你的代码中哪些部分是经常使用的,然后通过其及时编译代码的能力(JIT)来优化代码。但这也意味着,它必须先弄清楚这些
Java UUID生成的性能影响 – fastthread
Java 开发人员倾向于使用“java.util.UUID#randomUUID()” API 来
Java大型数据集合实现并行加速处理几种方法 - DZone
在这篇文章中,一个非常简单的转换操作将被应用于一个大型的Java数据集合。 转换操作对于转换操作,我们定义了一个函数接口。它只是接收一个R类型的元素,应用一个转换操作,并返回一个S类型的转换对象。
JDK 18 GC垃圾回收机制比较
从 JDK 18 开始,JDK 附带了四个垃圾收集器 (GC);串行 GC、并行 GC、G1 GC 和 ZGC。在大多数情况下,默认的 GC G1 GC 将是最佳选择。但是,了解 GC 的设计目标可能会有所帮助,并且可能会帮助您实现应用程序的性能目标。本文将对每个 GC 以及何时应该使用它们
如何将PostgreSQL查询优化100倍 - Vadim
用来加快PostgreSQL中SELECT-s的一些技巧:带有冗余条件的LEFT JOIN、VALUES、扩展统计、主键类型转换、CLUSTER、pg_hint_plan LEFT JOIN 的隐藏优势这种方法的真正优势体现在多层JO
Java出现一个新的GC:LXR
LXR是一种基于引用计数的新 Java 垃圾收集器,一种新的低延迟、高吞吐量的垃圾回收器。 该文在OpenJDK 11(当时的LTS)中构建了LXR,与现有G1、Shenandoah和ZGC等回收器进行了比较评估,LXR 在吞吐量和
Java中String.format变得更快 - Miloš
从 JDK17 开始String#format对于简单的场景具有更好的性能。不要在简单的场景中避免它。对于复杂的场景,它仍然几乎与以往一样慢。 Java 8 早期的默认值concat确实执行得有点慢。在 Java 9 及更高版本中,我们得到了很多改进。Stri
Java中hashcode和equals性能注意点 - Shai
几周前,我 在 reddit 上遇到了这个故事
使用Java 18的Vector API提高性能 - martin
Java Vector API 为现代 CPU 的数据并行功能提供了一个抽象层。由于不同的处理器架构有不同的风格,因此没有简单的解决方案来利用软件中特定于平台的功能。通常需要以特定于平台的方式编写代码并利用平台的特定功能来获得出色的性能优势。Vector API 试图使开发人员能够以
JVM c1、c2 编译线程——CPU 消耗高?
c1, c2编译器线程是由Java虚拟机创建的,以优化你的应用程序的性能。偶尔,这些线程会倾向于消耗高CPU。在这篇文章中,让我们了解更多关于c1、c2编译器线程的情况,以及如何解决它们的高CPU消耗。 读完这篇文章后,像Hotspot JIT、c
仅供Go使用的gob比JSON性能提高80倍 - ksred
我们主要产品是股票交易规则引擎:策略是你创建的一套股票或加密货币的规则,这个引擎会跟踪你创建的策略中所做的所有交易,从中你可以看到哪些交易效果好,哪些交易效果不好,你每天都会收到一封包含交易机会的电子邮件。 这个规则引擎的一个关键部分是确保在回测期
Java的类加载性能问题及解决办法 - DZone
Java在调用 Classloader.loadclass() 时线程会被阻塞,看它的源代码。下面是 ClassLoader.loadClass() 方法的源代码摘录。如果您想查看完整的源代码java.lang.ClassLoader,可以
罗伯-派克的5条编程规则:数据高于算法
罗伯-派克(Rob Pike)是Go编程语言的设计者之一,也是贝尔实验室Unix团队的核心成员(他与Brian Kernighan合著了《Unix编程环境》)。 他还因其5条编程规则而闻名:你无法知道一个程序将在哪里度过它的时间。瓶
Lilliput:将Java对象头减为64位的里程碑版本发布
在64位Hotspot中,Java对象有一个128位的对象头:一个64位的多用途头("标记 "或 "锁定")字和一个64位的类指针。(正常Java 堆中的对象头是96 位,使用 -XX:-UseCompressedClassPointers 运行时为 128)典型的平均对象大小为5-
使用Go泛型将Google的B-Tree性能提升40%
有很多理由对 Go 中的泛型感到兴奋。在这篇博文中,我将展示如何使用泛型,在已经优化好的包Google B-Tree实现中获得 40% 的性能提升。
Proebsting定律:编译器每18年只将计算能力提升一倍
我声称下面这个简单的实验支持这个令人沮丧的说法:用你最喜欢的最先进的优化编译器运行你最喜欢的一组基准测试。在启用和未启用优化功能的情况下运行这些基准。这些数字的比率代表了编译器优化对加速这些基准测试的全部贡献。让我们假设,对于典型的真实世界的应用,这个比率大约是4倍,让我们进
多核+一个JVM比单核+多个JVM启动更快
在6核容器运行一个JVM会比在1核容器上运行6个JVM启动得快拥有更多资源的更少 JVM 比拥有更少资源的更多 JVM 更好。即使 CPU 和 RAM 的总量保持不变。这对一切都有好处:启动时间、尾部延迟、整个过程,甚至成本(一旦你找到了最佳点)。
DB面试问题:单条记录的大量查询 - Reddit
有一个表存储了所有用户的余额信息。而很大一部分select和更新查询都与一条记录有关(例如,公司账户余额/一个机构用户经常进行交易),因此这些查询需要一个接一个地执行。你能做些什么来提高这些查询的性能? 以下是回答:利用索引加快每个查询的搜索时间
上页
下页