Development of Java Logging Part 1: Past and Present

By Shangzuo Preface Initially, I wrote this article to share my knowledge of Java logging with my team, as I often encountered irrational logging co.

Common Java Code Defects and Solutions

This article summarizes common code defects and solutions encountered in daily development to provide helpful insights.

How to Avoid the Kotlin Coroutine Deadlocks?

This article analyzes the root cause of Kotlin coroutine deadlock and how to completely avoid this problem.

Non-intrusive Observability Exploration with GraalVM Static Compilation

This article introduces a static instrumentation approach for Java Agent, focusing on the concept of static instrumentation.

Compact Object Headers in Dragonwell JDK: Reducing Costs and Increasing Efficiency for Java Applications

This article introduces the latest technology of OpenJDK: compact object headers which is now provided by Dragonwell JDK and significantly optimizes the memory usage of Java applications.

New Tool of Java 22: Use Java Stream Gather to Handle States in a Stream

This article examines the concept of a stream and introduces in detail the Java 22 Stream Gather API.

A Trick to Get Rid of If-Else: Elegant Parameter Verification

This article focuses on discussing how to gracefully perform parameter verification.

Retry Mechanism in Java Fault-tolerant Programming

This article summarizes retry techniques in the face of service failures and provides an analysis of the source code of retry tools and components.

Implementation of Java API Throttling

The article introduces four common throttling algorithms and their implementations.

Official Release of IntelliJ IDEA and Apache Dubbo's IDEA Plug-in

This article introduces the release of the official IntelliJ IDEA plug-in for Apache Dubbo and highlights the benefits of the plug-in.

Analysis of Performance Practices in Java Log and Principle Interpretation

This article explores performance practices in the logging process through several technical points.

How to Run Spark in MaxCompute

This article describes how to configure Spark 2.x dependencies and provides some examples.

Several Routines and Implementations of Maintaining Extensibility in Java

In this article, the author summarizes some low-cost routines for maintaining extensibility.

Building Microservices Applications Based on Static Compilation

This article discusses how Java static compilation can address the issues of high cold start and runtime memory usage, enabling the development of more lightweight microservices applications.

Deploying a Java Web Environment on a CentOS 7 Instance Manually

This article provides a step-by-step guide on how to manually deploy a Java web environment on an ECS instance.

A New Stream: Adding the Generator Feature to Java

This article introduces a new design pattern that is not specific to any programming language but is applicable to many modern programming languages.

How to Ensure Java Application Security?

This article introduces Teaclave Java and how to ensure Java application security.

Exploring the Principles of Runtime Type T in A<T> Generics in Java

The article explores Java generics and delves into the impact of reflection on the extension of generics and type erasure.

Towards Native: Examples and Principles of Spring and Dubbo AOT Technology

This article discusses Java application challenges in the cloud era, GraalVM Native Image solutions, and the principles of GraalVM.

Major Upgrade of Dubbo Triple Protocol: Support for Connecting the Web and Backend Microservices Over HTTP

The Dubbo Triple Protocol has undergone a major upgrade, allowing for seamless connectivity between web and backend microservices over HTTP.