Xiao Lou's Tech Notes
Author

Xiao Lou's Tech Notes

Backend technology sharing, architecture design, performance optimization, source code reading, troubleshooting, and pitfall practices

79
Articles
0
Likes
19
Views
0
Comments
Recent Articles

Latest from Xiao Lou's Tech Notes

79 recent articles
Xiao Lou's Tech Notes
Xiao Lou's Tech Notes
Mar 20, 2021 · Databases

High-Performance SQL Auditing in Cobar: Architecture, Buffers, and UDP

This article describes how to implement a low‑overhead SQL audit feature for the Cobar database middleware by modifying its code, using an agent with Kafka, choosing UDP for inter‑process communication, and designing a custom ring‑buffer to achieve near‑baseline throughput with only minimal performance loss.

CobarJavaRingBuffer
0 likes · 11 min read
High-Performance SQL Auditing in Cobar: Architecture, Buffers, and UDP
Xiao Lou's Tech Notes
Xiao Lou's Tech Notes
Feb 27, 2021 · Backend Development

Why Dubbo 2.7.x Can’t Return Implicit Parameters from Provider to Consumer

An in‑depth analysis reveals that Dubbo 2.7.x fails to propagate provider‑side implicit parameters back to the consumer because the new AsyncRpcResult/AppResponse architecture discards attachments, a change introduced for better async support, effectively making this behavior a bug in the 2.7 series.

AsyncRpcResultBackend DevelopmentDubbo
0 likes · 7 min read
Why Dubbo 2.7.x Can’t Return Implicit Parameters from Provider to Consumer
Xiao Lou's Tech Notes
Xiao Lou's Tech Notes
Jan 30, 2021 · Backend Development

Why Dubbo Remains a Top Java RPC Framework for Modern Backend Systems

This article traces Dubbo’s evolution from its Alibaba origins to its Apache graduation, outlines its core features such as protocol design, service registry, clustering, filters, and extensibility, and discusses recent cloud‑native and reactive programming directions shaping its future.

DubboJavaRPC
0 likes · 12 min read
Why Dubbo Remains a Top Java RPC Framework for Modern Backend Systems
Xiao Lou's Tech Notes
Xiao Lou's Tech Notes
Oct 11, 2020 · Backend Development

Master OpenResty: Install, Hello World, and Real‑World Lua Routing

This tutorial walks through installing OpenResty, creating a simple hello‑world service, and implementing a practical Lua‑based request routing example that distinguishes single‑ versus multiple‑UID POST bodies, complete with Nginx configuration, Go backend code, and testing steps.

DockerLuaOpenResty
0 likes · 9 min read
Master OpenResty: Install, Hello World, and Real‑World Lua Routing
Xiao Lou's Tech Notes
Xiao Lou's Tech Notes
Sep 2, 2020 · Backend Development

How to Enable Dubbo Application‑Level Service Discovery in 2.7.5

This guide explains why Dubbo introduced application‑level service discovery, how it differs from interface‑level registration, and provides step‑by‑step instructions—including Docker‑based Zookeeper setup, source code configuration, and code examples—to enable and test the new feature in Dubbo 2.7.5.

ZooKeeperbackendservice discovery
0 likes · 6 min read
How to Enable Dubbo Application‑Level Service Discovery in 2.7.5
Xiao Lou's Tech Notes
Xiao Lou's Tech Notes
Aug 2, 2020 · Backend Development

Service Registry Guide: Concepts, Features, and Choosing Zookeeper vs Nacos

This article explains what a service registry is, outlines its essential capabilities such as high availability, horizontal scaling, health checking, routing, and multi‑datacenter support, and compares popular open‑source solutions like Zookeeper and Nacos to help you select the right one for your stack.

Nacoshigh availabilityhorizontal scaling
0 likes · 11 min read
Service Registry Guide: Concepts, Features, and Choosing Zookeeper vs Nacos
Xiao Lou's Tech Notes
Xiao Lou's Tech Notes
Jun 18, 2020 · Backend Development

How to Build an Ultra‑Fast Ring Buffer for Producer‑Consumer in Java

This article explains a high‑performance ring buffer implementation for a multi‑threaded producer‑consumer model in Java, covering design choices, atomic index handling, benchmark results, and further optimizations such as cache‑line padding and multi‑buffer sharding.

AtomicIntegerJava concurrencyProducer Consumer
0 likes · 10 min read
How to Build an Ultra‑Fast Ring Buffer for Producer‑Consumer in Java
Xiao Lou's Tech Notes
Xiao Lou's Tech Notes
May 19, 2020 · Backend Development

Can You Build a Faster Counter Than Java’s LongAdder? A Deep Dive

An in‑depth Java performance study explores LongAdder, compares it with AtomicLong and lock‑based counters using JMH, and walks through successive custom implementations (V0‑V5) that apply striping, modulo optimization, false‑sharing elimination, and advanced hash probing to approach or surpass LongAdder’s throughput.

JMHJava concurrencyfalse sharing
0 likes · 16 min read
Can You Build a Faster Counter Than Java’s LongAdder? A Deep Dive