<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Blogs on Duc Truong</title>
    <link>https://ductruong.com/en/blog/</link>
    <description>Recent content in Blogs on Duc Truong</description>
    <generator>Hugo -- 0.144.2</generator>
    <language>en</language>
    <lastBuildDate>Sat, 10 Aug 2024 19:36:17 +0700</lastBuildDate>
    <atom:link href="https://ductruong.com/en/blog/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Database: Why did NoSQL emerge when SQL already existed?</title>
      <link>https://ductruong.com/en/blog/2024/08/database-why-did-nosql-emerge-when-sql-already-existed/</link>
      <pubDate>Sat, 10 Aug 2024 19:36:17 +0700</pubDate>
      <guid>https://ductruong.com/en/blog/2024/08/database-why-did-nosql-emerge-when-sql-already-existed/</guid>
      <description>&lt;p&gt;Recently, I had the opportunity to participate in the development and construction of a large-scale product, designed to serve hundreds of
thousands, even millions, of users daily. As a result, the core architecture was built on the CQRS Pattern, a model that separates data
reading and writing operations. This approach has allowed us to optimize the system’s performance and scalability while minimizing risks
when handling large volumes of data. Through these experiences, I’ve been able to answer a question that has puzzled me for a long time:
&amp;lsquo;Why did NoSQL emerge when SQL already existed?&amp;rsquo; In this article, I’ll share with you the origins and development reasons behind SQL and
NoSQL, as well as the challenges each of these database systems faces. Let’s dive in!&lt;/p&gt;</description>
    </item>
    <item>
      <title>Designing a High-Load File Upload System with the Tus Protocol</title>
      <link>https://ductruong.com/en/blog/2024/05/designing-a-high-load-file-upload-system-with-the-tus-protocol/</link>
      <pubDate>Wed, 15 May 2024 16:30:10 +0700</pubDate>
      <guid>https://ductruong.com/en/blog/2024/05/designing-a-high-load-file-upload-system-with-the-tus-protocol/</guid>
      <description>&lt;p&gt;Hello everyone, uploading data to the internet happens every day, from uploading photos to Facebook, videos to YouTube, TikTok, or files to
Google Drive, etc. Files can range from small to very large sizes, but network environments have never been stable 😅, with jitter, lag, or
sudden disconnections 🤯. Have you ever wondered how to deploy a system capable of resuming an upload even if the connection is lost midway?&lt;/p&gt;</description>
    </item>
    <item>
      <title>Implement polling technique with Golang</title>
      <link>https://ductruong.com/en/blog/2024/04/implement-polling-technique-with-golang/</link>
      <pubDate>Sat, 27 Apr 2024 20:21:23 +0700</pubDate>
      <guid>https://ductruong.com/en/blog/2024/04/implement-polling-technique-with-golang/</guid>
      <description>&lt;p&gt;Hello everyone, in the &lt;a href=&#34;https://ductruong.com/en/blog/2024/04/what-is-polling-technique-short-polling-vs-long-polling/&#34;&gt;previous post&lt;/a&gt;, I introduced the &lt;strong&gt;Polling&lt;/strong&gt; technique. In this post, I will
leverage the power of &lt;strong&gt;Golang&lt;/strong&gt; to implement the Polling technique (&lt;strong&gt;Short Polling&lt;/strong&gt; and &lt;strong&gt;Long Polling&lt;/strong&gt;).&lt;/p&gt;
&lt;p&gt;This is a blog post in my &lt;a href=&#34;https://ductruong.com/en/series/system-design/&#34;&gt;System Design&lt;/a&gt; series, if you are interested in issues related to system design.
software system, follow this series to update the latest knowledge!&lt;/p&gt;
&lt;h2 id=&#34;short-polling&#34;&gt;Short polling&lt;/h2&gt;
&lt;p&gt;In this approach, the downstream will send a request to the upstream after a certain period of time. This is the simplest approach.&lt;/p&gt;</description>
    </item>
    <item>
      <title>What is polling technique? Short polling vs long polling</title>
      <link>https://ductruong.com/en/blog/2024/04/what-is-polling-technique-short-polling-vs-long-polling/</link>
      <pubDate>Tue, 23 Apr 2024 23:25:18 +0700</pubDate>
      <guid>https://ductruong.com/en/blog/2024/04/what-is-polling-technique-short-polling-vs-long-polling/</guid>
      <description>&lt;p&gt;In an era of relentless technological advancement, increasingly sophisticated software systems are emerging, accompanied by ever-growing and
complex data. To handle large and complex data, modern software systems are often designed using the Microservices model. The Microservices
model helps break down the system into smaller services, each of which can have even smaller components.&lt;/p&gt;
&lt;p&gt;One of the biggest challenges when building a Microservices system is how to make the services communicate with each other effectively. In
this article, we will explore a communication technique between services or components in the Microservices model, known as Polling.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Markdown: Basic guide for beginners</title>
      <link>https://ductruong.com/en/blog/2024/04/markdown-basic-guide-for-beginners/</link>
      <pubDate>Sat, 20 Apr 2024 18:35:00 +0700</pubDate>
      <guid>https://ductruong.com/en/blog/2024/04/markdown-basic-guide-for-beginners/</guid>
      <description>&lt;p&gt;Hello everyone, this is the first article in my &lt;a href=&#34;https://ductruong.com/en/series/markdown/&#34;&gt;series about Markdown&lt;/a&gt;, a simple and easy-to-use markup language.
In this article, we will learn about the basic syntax of Markdown and how to use it in real applications.&lt;/p&gt;
&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;Markdown is a lightweight markup language designed to create text that is easy to read and write, created by &lt;em&gt;&lt;strong&gt;John Gruber&lt;/strong&gt;&lt;/em&gt; in 2004. Today, markdown is one of the most popular markup languages. most variable in the world.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
