Tagged articles
1029 articles
Page 8 of 11
Selected Java Interview Questions
Selected Java Interview Questions
Dec 8, 2020 · Backend Development

High‑Concurrency Performance Tuning of a Java SSM E‑commerce Project: Diagnosis, Optimization, and Results

This article details a complete end‑to‑end high‑concurrency tuning process for a Java SSM monolithic e‑commerce system, covering problem identification, root‑cause analysis, a series of JVM, Tomcat, Redis and JDBC optimizations, horizontal scaling, code refactoring, and the resulting stability improvements.

JVMSSMTomcat
0 likes · 9 min read
High‑Concurrency Performance Tuning of a Java SSM E‑commerce Project: Diagnosis, Optimization, and Results
IT Architects Alliance
IT Architects Alliance
Dec 2, 2020 · Operations

How to Diagnose and Optimize Business System Performance Issues

This article outlines a comprehensive process for identifying root causes of performance bottlenecks in production business systems, covering hardware, database, middleware, JVM settings, code inefficiencies, and monitoring tools, and provides practical optimization techniques for each layer.

JVMdatabasediagnostics
0 likes · 16 min read
How to Diagnose and Optimize Business System Performance Issues
Programmer DD
Programmer DD
Nov 29, 2020 · Backend Development

Why Does Java Limit String Literals to 65,534 Characters?

This article explains how Java stores strings using a char array, the theoretical maximum length of 2^31‑1 characters, and why the JVM limits string literals to 65,534 characters due to constant‑pool u2 indexing, illustrated with code examples and a practical experiment.

Constant PoolJVMLength Limit
0 likes · 9 min read
Why Does Java Limit String Literals to 65,534 Characters?
Top Architect
Top Architect
Nov 26, 2020 · Fundamentals

Understanding Java String Length Limits: JVM Specification, Constant‑Pool Constraints, and Practical Experiments

This article explains why Java strings have length limits, detailing the char[] storage, the int‑based array size ceiling, the JVM constant‑pool u2 restriction of 65535 bytes, and demonstrates a compile‑time experiment building a 65,534‑character literal to illustrate the practical impact.

Constant PoolJVMLength Limit
0 likes · 8 min read
Understanding Java String Length Limits: JVM Specification, Constant‑Pool Constraints, and Practical Experiments
Programmer DD
Programmer DD
Nov 13, 2020 · Backend Development

10 Tricky Java Interview Questions and Their Answers Explained

This article presents ten challenging Java interview questions covering method overloading, object comparison, garbage collection, parameter passing, string creation, floating‑point precision, static method behavior, double comparison, try‑catch‑finally execution, and main method overloading, each followed by a concise explanation of the correct answer.

JVMOOPanswers
0 likes · 7 min read
10 Tricky Java Interview Questions and Their Answers Explained
Qunar Tech Salon
Qunar Tech Salon
Nov 13, 2020 · Fundamentals

Understanding JVM Garbage Collectors: Memory Models, Generational and Region-Based Designs, and Low‑Latency Collectors

This article examines the evolution and classification of HotSpot JVM garbage collectors, explaining the performance triangle of heap usage, throughput and pause time, and detailing generational, region‑based, and low‑latency collectors such as G1, Shenandoah, and ZGC with their design principles and benchmark results.

G1Garbage CollectionJVM
0 likes · 19 min read
Understanding JVM Garbage Collectors: Memory Models, Generational and Region-Based Designs, and Low‑Latency Collectors
Meituan Technology Team
Meituan Technology Team
Nov 12, 2020 · Backend Development

Comprehensive Guide to Java CMS Garbage Collection Issues and Optimization

This guide explains Java HotSpot CMS garbage collection fundamentals, common problem scenarios like space shock and premature promotion, systematic root‑cause analysis using logs and tools, and practical optimization tactics such as stabilizing heap size, tuning CMS flags, monitoring off‑heap memory, and migrating to newer collectors.

CMSGarbage CollectionJVM
0 likes · 69 min read
Comprehensive Guide to Java CMS Garbage Collection Issues and Optimization
High Availability Architecture
High Availability Architecture
Nov 5, 2020 · Backend Development

Why We Chose Java for Our High‑Frequency Trading Application

The article explains how a high‑frequency trading firm evaluated Java versus C++ for ultra‑low‑latency trading, discusses the challenges of JVM JIT compilation and garbage‑collection pauses, and shows how Azul Zing’s C4 collector delivers near‑C++ latency while preserving Java’s development productivity.

Azul ZingGarbage CollectionJVM
0 likes · 11 min read
Why We Chose Java for Our High‑Frequency Trading Application
Alibaba Cloud Developer
Alibaba Cloud Developer
Nov 5, 2020 · Fundamentals

Why Understanding JVM Garbage Collection Algorithms Is Essential for Advanced Java Developers

This article explores the underlying principles of Java Virtual Machine garbage collection, detailing core concepts, classic algorithms, generational and incremental improvements, and the role of read/write barriers, helping developers grasp why mastering GC is a fundamental skill for high‑performance Java programming.

GC AlgorithmsGarbage CollectionJVM
0 likes · 26 min read
Why Understanding JVM Garbage Collection Algorithms Is Essential for Advanced Java Developers
Tencent Cloud Middleware
Tencent Cloud Middleware
Oct 30, 2020 · Cloud Computing

How KonaJDK Powers Tencent Cloud Java, Big Data, and Secure Computing

This article explains how Tencent's self‑developed KonaJDK underpins cloud Java services, enhances micro‑service monitoring, adds national cryptography support, optimizes large‑heap tools like jmap, and delivers performance gains for big‑data workloads, while contributing key features back to the OpenJDK community.

Big DataJVMKonaJDK
0 likes · 11 min read
How KonaJDK Powers Tencent Cloud Java, Big Data, and Secure Computing
Java Backend Technology
Java Backend Technology
Oct 27, 2020 · Backend Development

Master JVM Performance: Essential Tools and Real-World Usage Guide

This article explains common JVM problems such as OutOfMemoryError, memory leaks, and thread deadlocks, then introduces core monitoring tools—jps, jstack, jmap/jhat, jstat, and hprof—detailing their syntax, options, and practical examples to help Java developers diagnose and tune production applications.

HprofJVMjmap
0 likes · 15 min read
Master JVM Performance: Essential Tools and Real-World Usage Guide
Big Data Technology & Architecture
Big Data Technology & Architecture
Oct 25, 2020 · Fundamentals

Analyzing a JVM Crash Caused by Compressed Oops and MemberName vmtarget Mis‑handling

This article walks through a JVM crash that occurs during garbage collection, explains how to use the SA tool CLHSDB to locate the offending object, discusses the role of compressed oops and MemberName vmtarget, and provides concrete fixes such as adjusting field writes or disabling pointer compression.

CLHSDBCompressedOopsCrashAnalysis
0 likes · 9 min read
Analyzing a JVM Crash Caused by Compressed Oops and MemberName vmtarget Mis‑handling
Big Data Technology & Architecture
Big Data Technology & Architecture
Oct 25, 2020 · Backend Development

Understanding Value Numbering and Global Value Numbering in JVM C1 Compiler Optimization

This article explains how the JVM C1 compiler uses value numbering and global value numbering to merge identical computations, detailing hash calculation, ValueMapArray structures, control‑flow analysis, kill scenarios, and code transformation techniques for effective optimization.

Compiler OptimizationData Flow AnalysisGlobal Value Numbering
0 likes · 12 min read
Understanding Value Numbering and Global Value Numbering in JVM C1 Compiler Optimization
Meituan Technology Team
Meituan Technology Team
Oct 22, 2020 · Fundamentals

Java JIT Compilation: Principles, Optimizations, and Practical Tips

Java’s JIT compilation transforms bytecode into optimized native code at runtime using tiered C1 and C2 compilers—or Graal—to apply SSA, inlining, escape analysis, loop unrolling, and other optimizations, while profiling‑driven thresholds and tuning flags let developers balance startup speed, peak throughput, and latency.

JITJVMjava
0 likes · 36 min read
Java JIT Compilation: Principles, Optimizations, and Practical Tips
Top Architect
Top Architect
Oct 14, 2020 · Fundamentals

Deep Dive into Java synchronized: Object Header, Lock Types, and JVM Implementation

This article provides a comprehensive analysis of the HotSpot JVM implementation of the synchronized keyword, covering object header layout, the three lock states (biased, lightweight, heavyweight), their acquisition and release processes, bytecode differences, and practical code examples to help readers understand Java concurrency internals.

JVMObject Headerconcurrency
0 likes · 16 min read
Deep Dive into Java synchronized: Object Header, Lock Types, and JVM Implementation
Java Backend Technology
Java Backend Technology
Sep 22, 2020 · Fundamentals

Why Is Java’s main Method Public, Static, and Void? Explained

This article explores why Java’s entry‑point main method must be declared public, static, and void, covering JVM requirements, the role of static loading, accessibility, and the rationale for its void return type, while also noting related modifiers and common misconceptions.

JVMjavamain method
0 likes · 6 min read
Why Is Java’s main Method Public, Static, and Void? Explained
Senior Brother's Insights
Senior Brother's Insights
Sep 15, 2020 · Fundamentals

Why Is StringBuilder Not Thread‑Safe? Deep Dive into Java’s Internals

Although StringBuilder and StringBuffer share similar APIs, StringBuilder lacks thread safety because its append method updates shared fields without synchronization, leading to race conditions that can corrupt the internal char array and cause ArrayIndexOutOfBoundsException, as demonstrated by a multithreaded test example.

JVMconcurrencyjava
0 likes · 7 min read
Why Is StringBuilder Not Thread‑Safe? Deep Dive into Java’s Internals
Wukong Talks Architecture
Wukong Talks Architecture
Sep 15, 2020 · Fundamentals

JVM Parameter Types and Hands‑On Experiments

This tutorial explains the three main categories of JVM parameters—standard, X, and XX—demonstrates how to view, modify, and verify them using command‑line tools such as java, jps, and jinfo, and provides step‑by‑step hands‑on labs for each type.

JInfoJVMJVM Parameters
0 likes · 9 min read
JVM Parameter Types and Hands‑On Experiments
JD Cloud Developers
JD Cloud Developers
Sep 9, 2020 · Fundamentals

Unlocking JVM Secrets: A Visual Guide to Java Memory and Execution

This article demystifies the JVM’s memory architecture and execution engine, walking through class loading, the runtime data areas, JIT versus interpreter, and native interactions, complemented by clear diagrams to help developers understand how Java manages memory and executes code.

ClassLoadingJITJVM
0 likes · 7 min read
Unlocking JVM Secrets: A Visual Guide to Java Memory and Execution
Java Captain
Java Captain
Sep 7, 2020 · Fundamentals

Understanding the Java JVM Memory Model and Its Partitions

This article provides a comprehensive overview of the Java Virtual Machine runtime data area, detailing each memory partition—including the JVM stack, native method stack, heap, method area, and program counter—and explains the concept and usage of direct memory.

JVMMemory ModelRuntime
0 likes · 4 min read
Understanding the Java JVM Memory Model and Its Partitions
Programmer DD
Programmer DD
Sep 6, 2020 · Fundamentals

Understanding Java JVM Memory Model: All Runtime Data Areas Explained

This article provides a comprehensive overview of the Java Virtual Machine memory model, detailing each runtime data area—including the heap, stacks, method area, program counter, and direct memory—and explains their purposes and interactions within Java applications.

HeapJVMMemory Model
0 likes · 4 min read
Understanding Java JVM Memory Model: All Runtime Data Areas Explained
Java Architecture Diary
Java Architecture Diary
Sep 4, 2020 · Cloud Computing

Boost Java Cloud Run Performance: Proven JVM and Container Optimizations

Learn how to accelerate Java applications on Google Cloud Run by minimizing container image size, leveraging container-aware JVM settings, reducing thread usage, and applying Spring Boot-specific tweaks such as layered JARs, lazy initialization, and avoiding background tasks to cut startup latency and memory consumption.

Cloud RunContainer OptimizationDocker
0 likes · 17 min read
Boost Java Cloud Run Performance: Proven JVM and Container Optimizations
Full-Stack Internet Architecture
Full-Stack Internet Architecture
Sep 3, 2020 · Fundamentals

Understanding Pass‑by‑Value and the Illusion of Pass‑by‑Reference in Java

This article explains that Java fundamentally uses pass‑by‑value for method parameters, distinguishing between primitive value types stored on the stack and reference types whose references are passed, and demonstrates the behavior with code examples that clarify why apparent reference passing is actually passing a copy of the reference.

JVMReference Typesjava
0 likes · 7 min read
Understanding Pass‑by‑Value and the Illusion of Pass‑by‑Reference in Java
Top Architect
Top Architect
Aug 28, 2020 · Backend Development

Comprehensive Performance Tuning of a High‑Concurrency SSM E‑Commerce Application

This article details a step‑by‑step performance tuning process for an SSM‑based e‑commerce system experiencing severe CPU, memory, Redis, and JDBC issues during flash‑sale spikes, covering root‑cause analysis, JVM and Tomcat optimizations, connection‑pool adjustments, code refactoring, and the resulting stability improvements.

JVMSSMTomcat
0 likes · 7 min read
Comprehensive Performance Tuning of a High‑Concurrency SSM E‑Commerce Application
Full-Stack Internet Architecture
Full-Stack Internet Architecture
Aug 26, 2020 · Backend Development

Interview Experience and Technical Q&A for a Java Backend Position at Tencent Cloud (Xi'an)

The article shares the author's recent move to Xi'an, discusses the local job market, and provides detailed interview questions and answers on Java backend topics such as Redis replication, Kafka performance, MySQL transactions, and JVM garbage collection to help job seekers prepare effectively.

JVMKafkabackend-development
0 likes · 8 min read
Interview Experience and Technical Q&A for a Java Backend Position at Tencent Cloud (Xi'an)
Programmer DD
Programmer DD
Aug 25, 2020 · Fundamentals

What Does Java’s RUNNABLE State Really Mean? A Deep Dive into Thread States

This article explains the distinction between Java's RUNNABLE thread state and the operating‑system concepts of ready, running, and waiting, covering JVM‑level definitions, I/O blocking behavior, time‑slice scheduling, and includes concrete code examples to illustrate how blocked I/O still appears as RUNNABLE.

I/OJVMRunnable
0 likes · 12 min read
What Does Java’s RUNNABLE State Really Mean? A Deep Dive into Thread States
Programmer DD
Programmer DD
Aug 17, 2020 · Fundamentals

JVM Object Creation: Memory Allocation, Layout, and Access Explained

This article explains the JVM's process for creating a Java object, covering class loading checks, memory allocation strategies such as bump-pointer and free list, thread-safe allocation mechanisms, object header composition, instance data layout, padding, and the ways references locate objects via handles or direct pointers.

JVMObject CreationObject Layout
0 likes · 7 min read
JVM Object Creation: Memory Allocation, Layout, and Access Explained
dbaplus Community
dbaplus Community
Aug 11, 2020 · Operations

7 Real-World Production Failures and Fast Diagnosis Techniques

The article shares seven authentic production incident cases—from JVM Full GC spikes and memory leaks to cache avalanches, disk I/O blocks, database deadlocks, DNS hijacking, and bandwidth exhaustion—detailing root causes, step‑by‑step troubleshooting methods, code snippets, and practical mitigation strategies for engineers.

DNS hijackingDatabase DeadlockJVM
0 likes · 17 min read
7 Real-World Production Failures and Fast Diagnosis Techniques
High Availability Architecture
High Availability Architecture
Aug 11, 2020 · Operations

Understanding and Optimizing ZGC (Z Garbage Collector) for Low‑Latency Java Services

This article examines the Z Garbage Collector (ZGC) introduced in JDK 11, detailing its low‑pause design goals, underlying concurrent marking‑copy algorithm, colored pointer and read‑barrier techniques, practical tuning parameters, real‑world case studies, and the performance impact of upgrading from CMS/G1 to ZGC in high‑throughput, low‑latency services.

Garbage CollectionJVMLow latency
0 likes · 28 min read
Understanding and Optimizing ZGC (Z Garbage Collector) for Low‑Latency Java Services
Wukong Talks Architecture
Wukong Talks Architecture
Aug 7, 2020 · Fundamentals

JVM Interview Questions and Java Mind Map Resources

This article presents a comprehensive collection of JVM interview questions covering memory areas, garbage collection, class loading, and performance tuning, along with eleven detailed Java mind‑map images that visually summarize core concepts such as the JVM architecture, GC algorithms, and thread management.

Garbage CollectionJVMMemory Management
0 likes · 8 min read
JVM Interview Questions and Java Mind Map Resources
Programmer DD
Programmer DD
Aug 6, 2020 · Fundamentals

Why Overriding equals Without hashCode Can Cause Memory Leaks in Java

This article explores the distinction between OutOfMemory errors and memory leaks in Java, explains how improper use of static fields, unclosed streams, incorrect equals/hashCode implementations, and ThreadLocal can lead to leaks, and provides practical solutions and tools such as JVisualVM to detect and prevent them.

JVMOutOfMemoryThreadLocal
0 likes · 14 min read
Why Overriding equals Without hashCode Can Cause Memory Leaks in Java
Top Architect
Top Architect
Jul 29, 2020 · Backend Development

Investigation of Excessive Off‑Heap Memory Usage After Migrating a Spring Boot Project to the MDP Framework

The article details a step‑by‑step forensic analysis of why a Spring Boot application migrated to the MDP framework consumed far more physical memory than its configured 4 GB heap, uncovering off‑heap allocations caused by native code, package‑scanning, and glibc memory‑pool behavior, and explains how limiting scan paths or upgrading Spring Boot resolves the issue.

JVMMemory DebuggingNative Memory
0 likes · 12 min read
Investigation of Excessive Off‑Heap Memory Usage After Migrating a Spring Boot Project to the MDP Framework
Programmer DD
Programmer DD
Jul 26, 2020 · Backend Development

When Does Java Use StringBuilder for String Concatenation? A Deep Dive

This article examines why identical-looking string concatenations in Java sometimes use StringBuilder and other times are optimized away, showing bytecode differences, explaining compiler behavior, and summarizing the conditions that affect reference equality.

Compiler OptimizationJVMString concatenation
0 likes · 4 min read
When Does Java Use StringBuilder for String Concatenation? A Deep Dive
Full-Stack Internet Architecture
Full-Stack Internet Architecture
Jul 10, 2020 · Fundamentals

Common Java OutOfMemoryError Types and Their Solutions

This article explains the various OutOfMemoryError variants in the Java Virtual Machine, illustrates each with reproducible code examples, analyzes root causes, and provides practical mitigation strategies such as JVM flags, code refactoring, and system‑level adjustments.

JVMMemory ManagementOutOfMemoryError
0 likes · 20 min read
Common Java OutOfMemoryError Types and Their Solutions
Java Backend Technology
Java Backend Technology
Jul 7, 2020 · Backend Development

Why My Spring Boot App Swallowed 7 GB RAM: Uncovering Native Memory Leaks

After migrating a project to the MDP framework based on Spring Boot, the author observed excessive swap usage and physical memory consumption of 7 GB despite a 4 GB heap limit, and through a series of JVM, system, and native‑code diagnostics identified Spring Boot’s ZipInflaterInputStream native‑memory leak caused by unchecked package scanning.

JVMNative MemorySpring Boot
0 likes · 12 min read
Why My Spring Boot App Swallowed 7 GB RAM: Uncovering Native Memory Leaks
Full-Stack Internet Architecture
Full-Stack Internet Architecture
Jul 5, 2020 · Fundamentals

Understanding JVM Runtime Data Areas and Memory Management

This article provides a comprehensive overview of the Java Virtual Machine's runtime data areas—including the program counter, JVM stack, native method stack, heap, and method area—explaining their structures, lifecycles, related JVM flags, garbage‑collection strategies, TLAB, and escape‑analysis optimizations.

Garbage CollectionJVMMemory Management
0 likes · 42 min read
Understanding JVM Runtime Data Areas and Memory Management
Full-Stack Internet Architecture
Full-Stack Internet Architecture
Jun 30, 2020 · Fundamentals

Understanding Java Garbage Collection: Goals, Algorithms, and Timing

This article explains Java garbage collection by outlining its purpose, the criteria for reclaimable objects through reference counting and reachability analysis, when collection occurs, and the main GC algorithms—including mark‑sweep, copying, mark‑compact, and generational collection—along with common JVM collectors.

GC AlgorithmsGarbage CollectionJVM
0 likes · 9 min read
Understanding Java Garbage Collection: Goals, Algorithms, and Timing
Java Captain
Java Captain
Jun 25, 2020 · Fundamentals

Understanding Java Increment Operators and JVM Stack Frame Behavior

This article explains how Java's post‑ and pre‑increment operators affect variable values by tracing each statement through the JVM's stack frame, local variable table, and operand stack, and demonstrates the resulting values of i, j, and k with detailed diagrams and code examples.

JVMincrement operatorsjava
0 likes · 4 min read
Understanding Java Increment Operators and JVM Stack Frame Behavior
FunTester
FunTester
Jun 25, 2020 · Fundamentals

Mastering JDK8 Garbage Collection: Visual Cheat Sheet and Tuning Guide

This article presents a comprehensive overview of JDK8's garbage collection mechanisms, detailing memory regions, available collectors, key tuning parameters, thread settings, and practical commands, complemented by eight illustrative diagrams and a downloadable PDF cheat sheet for quick reference.

GC tuningGarbage CollectionJDK8
0 likes · 7 min read
Mastering JDK8 Garbage Collection: Visual Cheat Sheet and Tuning Guide
Architect's Tech Stack
Architect's Tech Stack
Jun 24, 2020 · Fundamentals

How Java Objects Are Created and Managed in the JVM

This article explains the JVM's process for creating Java objects, covering class loading checks, memory allocation strategies such as bump‑the‑pointer and free‑list, object header composition, instance data layout, alignment padding, and the ways references locate objects via handles or direct pointers.

JVMObject CreationThread Local Allocation Buffer
0 likes · 7 min read
How Java Objects Are Created and Managed in the JVM
Top Architect
Top Architect
Jun 22, 2020 · Fundamentals

Understanding the Seven Stages of Java Class Loading and Initialization

This article explains the seven stages of Java class loading—Loading, Verification, Preparation, Resolution, Initialization, Using, and Unloading—detailing each step, the underlying mechanisms, code examples, and practical considerations such as class initialization triggers and the distinction between symbolic and direct references.

InitializationJVMbytecode
0 likes · 14 min read
Understanding the Seven Stages of Java Class Loading and Initialization
Programmer DD
Programmer DD
Jun 13, 2020 · Fundamentals

Mastering Java Garbage Collection: Goals, Tuning, and Collector Choices

This article explains Java HotSpot VM garbage‑collection ergonomics, detailing pause‑time and throughput goals, generational collection mechanics, default heap sizing, and how to select and tune Serial, Parallel, G1, and ZGC collectors for optimal performance.

GC ErgonomicsGarbage CollectionJVM
0 likes · 32 min read
Mastering Java Garbage Collection: Goals, Tuning, and Collector Choices
Selected Java Interview Questions
Selected Java Interview Questions
Jun 12, 2020 · Fundamentals

Deep Dive into Java ClassLoader, Class Loading Process, and the Parent‑Delegation Model

This article explains when and how Java classes are loaded, details the JVM's ClassLoader implementation—including the native defineClass1 method, InstanceKlass creation, SystemDictionary registration, and parallel loading locks—then demonstrates breaking the parent‑delegation model with a custom ClassLoader and discusses practical usage scenarios.

JVMMetaspaceParent Delegation
0 likes · 18 min read
Deep Dive into Java ClassLoader, Class Loading Process, and the Parent‑Delegation Model
Sohu Tech Products
Sohu Tech Products
Jun 10, 2020 · Fundamentals

Using JMH for Java Microbenchmarking: A Comprehensive Guide

This article introduces JMH, explains how to add dependencies, write and run microbenchmarks for string concatenation, describes key annotations, highlights common pitfalls, and shows how to package, visualize, and integrate JMH benchmarks within Java projects.

BenchmarkingJMHJVM
0 likes · 14 min read
Using JMH for Java Microbenchmarking: A Comprehensive Guide
Senior Brother's Insights
Senior Brother's Insights
Jun 3, 2020 · Backend Development

How We Traced and Fixed Excessive Native Memory Usage After Migrating to Spring Boot

After moving a project to Spring Boot, the system reported unusually high swap usage despite a 4 GB heap, prompting a detailed investigation using JVM native‑memory tracking, pmap, gperftools, strace, and GDB, which ultimately identified Spring Boot’s JAR scanning and glibc memory arenas as the root causes and led to a configuration fix and an upgrade to resolve the off‑heap memory leak.

JVMLinuxNative Memory
0 likes · 11 min read
How We Traced and Fixed Excessive Native Memory Usage After Migrating to Spring Boot
Xianyu Technology
Xianyu Technology
Jun 2, 2020 · Backend Development

Diagnosing and Resolving Random JVM Hang Issues in a High-Concurrency Application

The article outlines a six‑step method for diagnosing sporadic JVM hangs in a high‑concurrency Xianyu service—starting with code review, live state capture, I/O checks, lock analysis, resource‑exhaustion assessment, and finally framework thread‑pool tuning—to uncover lost‑lock behavior and severe thread‑pool imbalance that cause prolonged lock waits despite low CPU load.

JVMLock AnalysisThread Dump
0 likes · 12 min read
Diagnosing and Resolving Random JVM Hang Issues in a High-Concurrency Application
Programmer DD
Programmer DD
May 22, 2020 · Backend Development

Can ZGC Deliver Sub‑10ms Pauses for Massive Java Heaps?

This article explains the design goals, architecture, key features, tuning options, and version history of Java's Z Garbage Collector (ZGC), highlighting its sub‑10 ms pause times for terabyte‑scale heaps, its use of colored pointers and load barriers, and the trade‑offs in throughput and configuration.

Garbage CollectionJVMLow latency
0 likes · 16 min read
Can ZGC Deliver Sub‑10ms Pauses for Massive Java Heaps?
Top Architect
Top Architect
May 21, 2020 · Backend Development

Comprehensive Guide to Java Application Performance Optimization and Diagnosis

This article provides an in‑depth overview of Java application performance optimization, covering a four‑layer model (application, database, framework, JVM), on‑site and post‑mortem analysis methods, OS and JVM diagnostic tools, common code and GC issues, database deadlock handling, and practical tuning recommendations.

Database TuningJVMdiagnostics
0 likes · 23 min read
Comprehensive Guide to Java Application Performance Optimization and Diagnosis
macrozheng
macrozheng
May 21, 2020 · Fundamentals

How Adjusting IntelliJ IDEA Memory Settings Boosts IDE Performance

This article reports a systematic experiment that compares four IntelliJ IDEA memory configurations on a large Java monolith and two micro‑services, measuring startup, project loading times and JVM garbage‑collection metrics with jstat to identify the most efficient setting.

IDE performanceIntelliJ IDEAJVM
0 likes · 11 min read
How Adjusting IntelliJ IDEA Memory Settings Boosts IDE Performance
Java Captain
Java Captain
May 20, 2020 · Fundamentals

Why Setting Unused Objects to null May Not Help Java Garbage Collection

This article explains, with concrete Java examples and JVM runtime‑stack analysis, why manually assigning null to objects that are out of scope does not always trigger earlier garbage collection, and how stack slot reuse can achieve the same effect without relying on a questionable practice.

Garbage CollectionJVMMemory Management
0 likes · 8 min read
Why Setting Unused Objects to null May Not Help Java Garbage Collection
Top Architect
Top Architect
May 7, 2020 · Backend Development

Comprehensive Guide to Java Application Performance Optimization and Diagnosis

This article presents a thorough overview of Java application performance optimization, covering a four‑layer model (application, database, framework, JVM), practical OS and Java diagnostic tools, JVM and GC tuning, application‑level code improvements, and database deadlock mitigation strategies.

Database TuningJVMdiagnostics
0 likes · 21 min read
Comprehensive Guide to Java Application Performance Optimization and Diagnosis
FunTester
FunTester
May 5, 2020 · Backend Development

Mastering Arthas Redefine: Live Java Class Hot‑Update Made Simple

This article explains how Arthas's redefine command enables hot‑updating of Java classes at runtime, outlines scenarios where redefinition fails, offers tips for uploading compiled .class files, and provides a concrete code example demonstrating the process.

ArthasHot UpdateJVM
0 likes · 3 min read
Mastering Arthas Redefine: Live Java Class Hot‑Update Made Simple
Full-Stack DevOps & Kubernetes
Full-Stack DevOps & Kubernetes
May 4, 2020 · Backend Development

Master Tomcat: Memory, Concurrency, Compression & Security Tuning Guide

This guide explains Tomcat’s role as a lightweight web server, details the required runtime environment, and provides step‑by‑step configurations for memory allocation, JVM options, connector concurrency, gzip compression, caching, security hardening, database connection pooling, and additional performance tweaks.

JVMoptimizationperformance
0 likes · 11 min read
Master Tomcat: Memory, Concurrency, Compression & Security Tuning Guide
转转QA
转转QA
Apr 30, 2020 · Backend Development

Introducing JVM SandBox for Exception Injection Testing

This article explains how to use JVM SandBox, a non‑intrusive Java Agent‑based tool, to dynamically attach to a running JVM and inject exceptions at specific method call points, enabling comprehensive exception testing for server, dependency, and application failures.

Exception InjectionJVMsandbox
0 likes · 8 min read
Introducing JVM SandBox for Exception Injection Testing
FunTester
FunTester
Apr 23, 2020 · Operations

Mastering Arthas Thread Command for Deep Java Performance Insights

This article explains how the Arthas thread command can reveal detailed JVM thread information—including states, CPU usage, stack traces, and lock status—and provides a practical code demo to help Java developers monitor and diagnose performance issues effectively.

ArthasJVMPerformance Monitoring
0 likes · 4 min read
Mastering Arthas Thread Command for Deep Java Performance Insights
Top Architect
Top Architect
Apr 20, 2020 · Backend Development

Diagnosing and Resolving Native Memory Leak in Spring Boot Applications

This article details a step‑by‑step investigation of excessive native memory usage in a Spring Boot service, explaining how JVM tools, system tracers, and custom allocators revealed that the default MCC package scanner and Inflater implementation caused a hidden memory leak that was fixed by configuring scan paths and upgrading Spring Boot.

JVMLinuxSpring Boot
0 likes · 12 min read
Diagnosing and Resolving Native Memory Leak in Spring Boot Applications
Full-Stack Internet Architecture
Full-Stack Internet Architecture
Apr 18, 2020 · Backend Development

Understanding How new String Creates Objects and the Role of the String Constant Pool in Java

This article explains why the new String("xxx") expression may create one or two objects depending on the presence of the literal in the JVM's string constant pool, demonstrates the behavior with compiled bytecode and runtime examples, and clarifies common interview misconceptions about Java string object creation.

Constant PoolJVMObject Creation
0 likes · 12 min read
Understanding How new String Creates Objects and the Role of the String Constant Pool in Java
Java Architect Essentials
Java Architect Essentials
Apr 17, 2020 · Fundamentals

Comprehensive Java JVM Interview Guide: Architecture, Memory, GC, Class Loading, and Optimization

This article provides an extensive overview of Java Virtual Machine fundamentals for interview preparation, covering JVM components, runtime data areas, heap vs. stack memory, garbage collection mechanisms, algorithms, collectors, memory allocation strategies, class loading processes, and tuning tools.

Garbage CollectionJVMMemory Management
0 likes · 31 min read
Comprehensive Java JVM Interview Guide: Architecture, Memory, GC, Class Loading, and Optimization
21CTO
21CTO
Apr 12, 2020 · Backend Development

What I Learned from 20+ Java Backend Interviews: Questions, Answers, and Tips

The author, a 985‑master’s graduate, shares a detailed chronicle of her preparation and interview experiences across dozens of Chinese tech giants, listing the technical questions asked—ranging from Java fundamentals, JVM internals, concurrency, data structures, design patterns, to system design—and offering practical advice for future candidates.

AlgorithmsBackendJVM
0 likes · 11 min read
What I Learned from 20+ Java Backend Interviews: Questions, Answers, and Tips
Java Captain
Java Captain
Apr 3, 2020 · Backend Development

SpringBoot Project Optimization: Configuration Files and JVM Tuning

This article explains how to optimize a SpringBoot application by adjusting Tomcat settings in the application.properties file, tuning JVM parameters with examples, and demonstrates two practical methods—IDE configuration and command‑line scripts—to improve performance and resource usage.

ConfigurationJVMSpringBoot
0 likes · 6 min read
SpringBoot Project Optimization: Configuration Files and JVM Tuning