Do Hung Anh

Software Engineer

About me

Featured

Distributed Locks and How to Implement Them with Redis

In distributed systems, ensuring data consistency and preventing race conditions is a major challenge, especially when many processes or services access shared resources concurrently. A distributed lock is an effective way to handle this problem. In this article, I will help you understand what a distributed lock is, why it is needed, the different ways to implement one, and how to build it with Redis.

16m

Message Broker

Have you ever wondered what keeps payment services, social networks, and delivery apps running smoothly every single day? The secret lies in the Message Broker - the "invisible connector" that moves information safely and efficiently between systems. Let's explore what a Message Broker really is!

7m

Explore by topic

Explore the writing by topic.

0

System Design

Trade-offs behind the architecture decisions that hold up at scale.

3

Backend

APIs, services, and the logic running behind the scenes.

2

Databases

Indexes, storage engines, and query internals.

0

Cloud

Cloud infrastructure, deployment, and running things in production.

1

Kafka

Event streaming and asynchronous messaging.

1

Redis

Caching, distributed locks, and in-memory data.

Latest writing

Deep dives on backend, databases, and infrastructure.

What Happens When MySQL Executes a SELECT Query?

SELECT is usually the very first SQL statement anyone learns, yet few stop to ask what actually happens inside MySQL when that statement runs. This post walks through MySQL's server architecture and the full journey a SELECT query takes, from establishing the connection to the Executor handing the final result back to the client.

10mDatabase Internals

Top 10 Java Core Interview Questions

Foundational knowledge is something interviewers always check, whether you're a fresher or a senior engineer. This post rounds up the 10 most common Java Core interview questions, with quick hints and detailed explanations so you can review before your next interview.

9m

Distributed Locks and How to Implement Them with Redis

In distributed systems, ensuring data consistency and preventing race conditions is a major challenge, especially when many processes or services access shared resources concurrently. A distributed lock is an effective way to handle this problem. In this article, I will help you understand what a distributed lock is, why it is needed, the different ways to implement one, and how to build it with Redis.

16m

CronJob & Cron Expressions

CronJob is an essential tool that lets developers automate tasks on a recurring schedule. To configure a CronJob correctly, however, you need a solid grasp of the Cron Expression - the expression that defines the schedule for your automated jobs. This article introduces CronJob, explains how to build a Cron Expression, and shares some handy tools for creating cron expressions with ease.

10m

Message Broker

Have you ever wondered what keeps payment services, social networks, and delivery apps running smoothly every single day? The secret lies in the Message Broker - the "invisible connector" that moves information safely and efficiently between systems. Let's explore what a Message Broker really is!

7m

Subscribe to the newsletter

Get an email whenever a new post goes up — no spam, just the writing.