Sanyou's Java Diary
Author

Sanyou's Java Diary

Passionate about technology, though not great at solving problems; eager to share, never tire of learning!

207
Articles
0
Likes
506
Views
0
Comments
Recent Articles

Latest from Sanyou's Java Diary

100 recent articles max
Sanyou's Java Diary
Sanyou's Java Diary
Jan 18, 2024 · Big Data

Inside Kafka’s Network Layer: How Messages Are Sent and Received

This article walks through Kafka’s network‑layer internals, detailing how the client prepares, pre‑sends, and actually sends messages, then reads and parses responses, with code snippets that illustrate the Selector, KafkaChannel, and related classes in Java NIO.

Java NIOKafkaMessage Receiving
0 likes · 22 min read
Inside Kafka’s Network Layer: How Messages Are Sent and Received
Sanyou's Java Diary
Sanyou's Java Diary
Jan 11, 2024 · Backend Development

30 Essential Elasticsearch Tips to Boost Query Performance and Avoid Common Pitfalls

This article compiles practical Elasticsearch recommendations covering query caching, filter contexts, pagination, aggregation strategies, index mapping, shard design, and scripting best practices, providing developers with actionable insights to improve search performance, reduce resource consumption, and prevent common operational issues.

Elasticsearchquery-optimizationsearch engine
0 likes · 25 min read
30 Essential Elasticsearch Tips to Boost Query Performance and Avoid Common Pitfalls
Sanyou's Java Diary
Sanyou's Java Diary
Jan 8, 2024 · Cloud Native

How Distributed Tracing Solves Microservice Performance Mysteries with SkyWalking

This article explains the principles and benefits of distributed tracing systems, introduces OpenTracing standards, details SkyWalking’s architecture and mechanisms for automatic span collection, context propagation, unique trace IDs, sampling strategies, and performance impact, and shares practical implementation experiences and custom plugin development within a real‑world microservice environment.

OpenTracingPerformance Monitoringdistributed tracing
0 likes · 20 min read
How Distributed Tracing Solves Microservice Performance Mysteries with SkyWalking
Sanyou's Java Diary
Sanyou's Java Diary
Dec 28, 2023 · Operations

Mastering High Availability: Traffic Governance, Circuit Breakers, Isolation, Retries, Timeouts and Rate Limiting

This article explains how to achieve the three‑high goals of high performance, high availability and easy scalability in microservice systems by using traffic governance techniques such as circuit breaking, various isolation strategies, retry mechanisms, timeout controls, degradation tactics and rate‑limiting, illustrated with practical examples and diagrams.

Timeoutcircuit breakermicroservices
0 likes · 32 min read
Mastering High Availability: Traffic Governance, Circuit Breakers, Isolation, Retries, Timeouts and Rate Limiting
Sanyou's Java Diary
Sanyou's Java Diary
Dec 21, 2023 · Databases

What Happens Inside MySQL When You Run an UPDATE? A Deep Dive

This article explains the complete execution process of a MySQL UPDATE statement, covering InnoDB page structures, tablespaces, buffer pool caching, redo/undo logs, binlog, and the two‑phase commit mechanism, helping readers understand how MySQL ensures data consistency and durability.

InnoDBMySQLUPDATE
0 likes · 21 min read
What Happens Inside MySQL When You Run an UPDATE? A Deep Dive
Sanyou's Java Diary
Sanyou's Java Diary
Dec 14, 2023 · Operations

Why Is My Redis Slowing Down? A Complete Diagnosis and Optimization Guide

This article explains how to determine whether Redis is truly experiencing latency spikes, outlines a step‑by‑step benchmarking process, identifies common causes such as high‑complexity commands, big keys, memory limits, fork overhead, AOF settings, CPU binding, swap usage, and provides concrete configuration and code examples to resolve each issue.

AOFLatencyPerformance Tuning
0 likes · 39 min read
Why Is My Redis Slowing Down? A Complete Diagnosis and Optimization Guide
Sanyou's Java Diary
Sanyou's Java Diary
Dec 4, 2023 · Backend Development

When Pagination Breaks: Real‑World Bugs and Practical Fixes

This article recounts three production‑level pagination bugs encountered in a payment system, explains why they occurred—ranging from naive batch processing to MySQL's nondeterministic LIMIT behavior—and shows how proper pagination, ThreadLocal cleanup, and deterministic ordering resolve the issues.

MySQLPaginationSQL
0 likes · 16 min read
When Pagination Breaks: Real‑World Bugs and Practical Fixes
Sanyou's Java Diary
Sanyou's Java Diary
Nov 23, 2023 · Backend Development

From Monolith to Microservices: A Complete Journey with Real‑World Examples

This article walks through the evolution of an online supermarket from a simple monolithic website to a fully decoupled microservice architecture, covering initial requirements, common pitfalls, service decomposition, database splitting, monitoring, tracing, logging, gateways, service discovery, circuit breaking, testing, frameworks, and service mesh, while illustrating each step with diagrams and practical advice.

MonitoringTestingcircuit breaker
0 likes · 22 min read
From Monolith to Microservices: A Complete Journey with Real‑World Examples
Sanyou's Java Diary
Sanyou's Java Diary
Nov 20, 2023 · Operations

Mastering High Availability: 10 Essential Design Techniques for Scalable Systems

This article outlines ten practical techniques—including system splitting, decoupling, asynchronous processing, retry strategies, compensation, backup, multi‑active deployment, isolation, rate limiting, circuit breaking, and degradation—to help engineers design highly available, resilient architectures for large‑scale internet applications.

fault tolerancemicroservicessystem design
0 likes · 14 min read
Mastering High Availability: 10 Essential Design Techniques for Scalable Systems