PrabinprabinKshrestha

View My Blogs

RabbitMQ: A Comprehensive Guide to Enterprise Messaging

Published: 8/30/2025 ○ Updated: 8/11/2025

RabbitMQ is a message broker that enables applications to communicate asynchronously. Instead of Service A directly calling Service B, they exchange messages through RabbitMQ. If Service B is temporarily unavailable, the message waits safely in a queue until Service B is ready to process it.

Database Sharding

Published: 8/30/2025 ○ Updated: 8/11/2025

Database sharding is a technique to horizontally scale large applications by splitting data across multiple databases, improving performance and reliability. Using a shard key and dynamic DbContext routing in .NET, queries can be directed to the appropriate shard seamlessly. Combined with caching and optional cross-shard aggregation, sharding enables scalable, cost-effective database architecture for high-volume systems.

Concepts of Apache Kafka

Published: 8/11/2025 ○ Updated: 8/11/2025

Apache Kafka has recently become very popular for data streaming. Many people also use it as a queuing and messaging platform, including for asynchronous communication. For example, imagine an IoT (Internet of Things) system with many construction vehicles operating in a construction zone for a company. We want to track each vehicle's movement, GPS location, activities, tire pressure, and other safety-related data. The goal is to log this information, visualize it later, and send notifications if any risks are detected. This creates a large amount of data, as each vehicle may send multiple types of data every few seconds (for example, every 10 seconds). Apache Kafka Streams can handle this kind of data flow efficiently.

News Feed System Design

Published: 7/20/2025 ○ Updated: 7/20/2025

I'm passionate about system design, and while reading System Design Interview - An Insider's Guide by Alex, I decided to write my own take on the concepts. This helps me deepen my understanding and retain the ideas more effectively.

How to write clean code? Notes on book - Clean Code

Published: 7/10/2025 ○ Updated: 7/10/2025

I studied the book by Uncle Bob 'Clean Code: A Handbook of Agile Software Craftsmanship'. It has the short summarized notes on how to write clean code in chapters. It helped me to write a good code and understood that code should be understandable by readers.