<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Subham Ghosh</title>
    <description>The latest articles on DEV Community by Subham Ghosh (@subham01).</description>
    <link>https://dev.to/subham01</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F527873%2F07880bb4-9f0f-4311-8b82-f799b36344aa.jpeg</url>
      <title>DEV Community: Subham Ghosh</title>
      <link>https://dev.to/subham01</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/subham01"/>
    <language>en</language>
    <item>
      <title>Under the Hood: Distributed Message Broker Design, Storage, and Failure Modes</title>
      <dc:creator>Subham Ghosh</dc:creator>
      <pubDate>Sun, 27 Sep 2026 12:30:11 +0000</pubDate>
      <link>https://dev.to/subham01/under-the-hood-distributed-message-broker-design-storage-and-failure-modes-1pan</link>
      <guid>https://dev.to/subham01/under-the-hood-distributed-message-broker-design-storage-and-failure-modes-1pan</guid>
      <description>&lt;p&gt;Most discussions about message brokers stay at a high level, placing generic broker boxes on a system architecture diagram. In practice, building or operating a distributed message broker requires understanding specific mechanics around storage, replication, and consumer coordination.&lt;/p&gt;

&lt;p&gt;I wrote a detailed walkthrough analyzing how a fault-tolerant message broker works under the hood. It focuses on implementation details, edge cases, and failure modes rather than surface-level component diagrams. It is structured to be useful for engineers at any experience level.&lt;/p&gt;

&lt;p&gt;Full article: &lt;a href="https://engineering.by-tech.workers.dev/notes/distributed-message-broker-system-design/" rel="noopener noreferrer"&gt;https://engineering.by-tech.workers.dev/notes/distributed-message-broker-system-design/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Key Concepts Covered&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Ordering vs Throughput: Using partition-based append-only logs to achieve horizontal scaling while maintaining strict ordering per key.&lt;/li&gt;
&lt;li&gt;Replication Semantics: What acks=all and min.insync.replicas actually protect against during leader failures, and where failure windows still exist.&lt;/li&gt;
&lt;li&gt;Duplicate Processing: Why consumer crashes lead to duplicate downstream side effects, and how generation fencing, idempotency keys, and transa
ctional outbox patterns prevent state corruption.&lt;/li&gt;
&lt;li&gt;Operational Boundaries: Managing backpressure, slow consumers falling behind retention windows, and broker disk exhaustion.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Architecture and Parameters Evaluated&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Storage Engine: Partitioned, append-only retained logs optimized for sequential disk I/O.&lt;/li&gt;
&lt;li&gt;Replication Factor: 3 replicas with min.insync.replicas = 2.&lt;/li&gt;
&lt;li&gt;Consumer Coordination: Generation-fenced offset commits to reject stale consumer writes after rebalances.&lt;/li&gt;
&lt;li&gt;Reliability Features: Retry topics, Dead Letter Queues, quotas, and retention cleanup policies.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The goal was to connect every architectural decision directly to a specific failure mode and detail the trade-offs involved.&lt;/p&gt;

&lt;p&gt;Feedback, questions, and discussion are welcome in the comments!&lt;/p&gt;

</description>
      <category>architecture</category>
      <category>backend</category>
      <category>infrastructure</category>
      <category>systemdesign</category>
    </item>
    <item>
      <title>How Google Drive Syncs Files and Resolves Concurrent Edits</title>
      <dc:creator>Subham Ghosh</dc:creator>
      <pubDate>Sun, 20 Sep 2026 04:41:28 +0000</pubDate>
      <link>https://dev.to/subham01/how-google-drive-syncs-files-and-resolves-concurrent-edits-d9j</link>
      <guid>https://dev.to/subham01/how-google-drive-syncs-files-and-resolves-concurrent-edits-d9j</guid>
      <description>&lt;p&gt;File synchronization looks simple until devices go offline, files become large, and multiple users edit the same content.&lt;br&gt;
This article examines a Google Drive–style sync architecture and the problems behind reliable file updates:&lt;/p&gt;

&lt;p&gt;Offline edits reconnecting at the same time&lt;br&gt;
Large files with only small changes&lt;br&gt;
Out-of-order retries, metadata updates, and notifications&lt;br&gt;
Concurrent edits and version conflicts&lt;br&gt;
The accompanying HLD diagram maps the flow across the client, API gateway, metadata server, block server, metadata database, and object storage. The article explains how these components interact during synchronization.&lt;br&gt;
&lt;strong&gt;Read the full article: &lt;a href="https://engineering.by-tech.workers.dev" rel="noopener noreferrer"&gt;https://engineering.by-tech.workers.dev&lt;/a&gt;&lt;/strong&gt;&lt;br&gt;
Any feedback, questions, or discussion are welcome.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fbr334w9kbedqhty84znz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fbr334w9kbedqhty84znz.png" alt=" " width="799" height="178"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
