Programmer XiaoFu
Author

Programmer XiaoFu

xiaofucode.com – a programmer learning guide driven by the pursuit of profit

111
Articles
0
Likes
419
Views
0
Comments
Recent Articles

Latest from Programmer XiaoFu

100 recent articles max
Programmer XiaoFu
Programmer XiaoFu
Aug 28, 2026 · Backend Development

Why Spring Cloud Gateway Rate Limiting Fails to Protect Downstream Services

The article analyzes five reasons why Spring Cloud Gateway's Redis-based token bucket rate limiting fails to protect downstream services during traffic bursts, including QPS vs. concurrency confusion, burstCapacity spikes, multi-route quota multiplication, KeyResolver fallback flaws, and Redis bottleneck fail-open behavior, then recommends tightening burst limits, adding downstream concurrency isolation with Sentinel/Resilience4j, and hardening KeyResolver configuration.

Burst TrafficRate LimitingRedis
0 likes · 13 min read
Why Spring Cloud Gateway Rate Limiting Fails to Protect Downstream Services
Programmer XiaoFu
Programmer XiaoFu
Aug 26, 2026 · Fundamentals

Why Teams Require Git Rebase Over Merge: Clean History & Better Debugging

This article explains why teams prefer Git rebase over merge, showing how rebase creates linear history that improves git log readability, bisect debugging, blame accuracy, and code review efficiency, while warning against rebasing shared branches and explaining conflict handling trade-offs.

Git workflowcode reviewdebugging
0 likes · 10 min read
Why Teams Require Git Rebase Over Merge: Clean History & Better Debugging
Programmer XiaoFu
Programmer XiaoFu
Aug 7, 2026 · Backend Development

Why Does Nginx Reverse Proxy Boost Website Performance?

The article explains how Nginx reverse proxy improves website performance by preventing backend threads from being blocked by slow clients, using an event‑driven epoll model, buffering, connection pooling, SSL termination, and proper configuration settings.

EpollNginxReverse Proxy
0 likes · 10 min read
Why Does Nginx Reverse Proxy Boost Website Performance?
Programmer XiaoFu
Programmer XiaoFu
Jul 16, 2026 · Backend Development

Can Java 21 Virtual Threads Replace CompletableFuture for Async Programming?

With Java 21’s virtual threads making threads cheap, the article examines whether the traditional CompletableFuture async style can be dropped, showing that simple IO can now be written synchronously, while complex task orchestration, fallback, and timeout still benefit from CompletableFuture’s richer API.

Async ProgrammingCompletableFutureJava
0 likes · 10 min read
Can Java 21 Virtual Threads Replace CompletableFuture for Async Programming?
Programmer XiaoFu
Programmer XiaoFu
Jun 25, 2026 · Backend Development

Why Delayed Double Delete Fails to Ensure Cache Consistency Under High Concurrency

The article dissects the delayed double‑delete pattern for Redis‑MySQL consistency, exposing its hidden pitfalls—unreliable delay timing, thread‑blocking sleeps, fragile second‑delete retries, and concurrent‑write anomalies—then recommends cache‑aside and stronger alternatives for production systems.

Cache consistencyDelayed Double DeleteMySQL
0 likes · 7 min read
Why Delayed Double Delete Fails to Ensure Cache Consistency Under High Concurrency
Programmer XiaoFu
Programmer XiaoFu
Jun 23, 2026 · Backend Development

Why Kafka Still Delivers Out‑of‑Order Messages Even When Using the Same Key

Even though Kafka guarantees that messages with the same key land in the same partition, the article explains how producer retries, multithreaded consumer processing, and partition expansion can break ordering, and provides concrete techniques such as idempotent producers and single‑threaded consumption to preserve order.

Consumer ConcurrencyKafkaPartition Expansion
0 likes · 10 min read
Why Kafka Still Delivers Out‑of‑Order Messages Even When Using the Same Key
Programmer XiaoFu
Programmer XiaoFu
Jun 18, 2026 · Cloud Native

Why Use Service Registration When Nginx Already Handles Load Balancing?

The article explains that Nginx’s static upstream configuration and passive health checks cannot keep up with dynamic microservice environments, while a service registry provides real‑time instance awareness, automatic failure detection, and metadata‑driven routing, making both tools complementary rather than interchangeable.

EurekaKubernetesNacos
0 likes · 9 min read
Why Use Service Registration When Nginx Already Handles Load Balancing?
Programmer XiaoFu
Programmer XiaoFu
Jun 17, 2026 · Information Security

Why JWT Requires Both Access and Refresh Tokens Instead of a Single Token

The article explains the inherent trade‑off of a single JWT’s expiration time, shows how using short‑lived Access Tokens together with long‑lived Refresh Tokens resolves both security and user‑experience issues, and provides detailed backend and frontend implementation guidance.

Access TokenJWTOAuth 2.0
0 likes · 11 min read
Why JWT Requires Both Access and Refresh Tokens Instead of a Single Token