<?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>Distributed Systems Design</title><description>Distributed Systems &amp; SRE insights by a Professional SRE Engineer</description><link>https://dsdesign.dev/</link><atom:link href="https://dsdesign.dev/feed_rss_updated.xml" rel="self" type="application/rss+xml" /> <managingEditor>Saeeda</managingEditor><docs>https://github.com/dsdesign-dev/blog</docs><language>en</language> <pubDate>Fri, 13 Mar 2026 10:39:28 -0000</pubDate> <lastBuildDate>Fri, 13 Mar 2026 10:39:28 -0000</lastBuildDate> <ttl>1440</ttl> <generator>MkDocs RSS plugin - v1.17.9</generator> <image> <url>None</url> <title>Distributed Systems Design</title> <link>https://dsdesign.dev/</link> </image> <item> <title>Three async patterns I used building a broken-link checker</title> <author>Saeeda</author> <description>&lt;h1&gt;Three async patterns I used building a broken-link checker&lt;/h1&gt; &lt;p&gt;A broken-link checker is the kind of project that begs for async — you&#39;re waiting on hundreds of HTTP responses, and doing that sequentially is painfully slow. I built &lt;a href=&#34;https://github.com/dsdesign-dev/link_checker_async&#34;&gt;link_checker&lt;/a&gt;, an async crawler that checks every link on a website, and along the way I leaned on three &lt;code&gt;asyncio&lt;/code&gt; patterns that keep showing up in real-world async Python code.&lt;/p&gt;</description> <link>https://dsdesign.dev/blog/three-async-patterns-i-used-building-a-broken-link-checker/</link> <pubDate>Thu, 12 Mar 2026 03:14:58 +0000</pubDate> <source url="https://dsdesign.dev/feed_rss_updated.xml">Distributed Systems Design</source><guid isPermaLink="true">https://dsdesign.dev/blog/three-async-patterns-i-used-building-a-broken-link-checker/</guid> <enclosure url="https://dsdesign.dev/assets/images/social/blog/three-async-patterns-i-used-building-a-broken-link-checker.png" type="image/png" length="41904" /> </item> </channel> </rss>