<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Timeouts on Brian Faust</title><link>https://vacua.dev/tags/timeouts/</link><description>Recent content in Timeouts on Brian Faust</description><generator>Hugo</generator><language>en-US</language><lastBuildDate>Mon, 01 Jan 0001 00:00:00 +0000</lastBuildDate><atom:link href="https://vacua.dev/tags/timeouts/rss.xml" rel="self" type="application/rss+xml"/><item><title>A Timeout Is Part of the Contract</title><link>https://vacua.dev/thoughts/a-timeout-is-part-of-the-contract/</link><pubDate>Fri, 01 Jul 2016 00:00:00 +0000</pubDate><guid>https://vacua.dev/thoughts/a-timeout-is-part-of-the-contract/</guid><description>&lt;p&gt;One remote accounting service would disappear for long periods and sometimes
return with an expired TLS certificate. Another integration scheduled
maintenance during peak operating hours. Work which normally completed
quickly could occupy application capacity while the dependency was unable to
help.&lt;/p&gt;
&lt;p&gt;A timeout would not have made either provider reliable. It would have answered
a question our callers still needed answered:&lt;/p&gt;
&lt;figure class="code-figure"&gt;
 &lt;div class="code-block" data-copy-code&gt;
 &lt;button class="copy-code" type="button" aria-label="Copy code"&gt;copy&lt;/button&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;How long may this attempt wait before its result is no longer useful?&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
 &lt;/div&gt;
&lt;/figure&gt;
&lt;p&gt;That answer belongs to the operation&amp;rsquo;s contract. Leaving it to a client
library&amp;rsquo;s default lets a transport decide how much of the customer&amp;rsquo;s time and
our worker capacity one dependency may consume.&lt;/p&gt;</description></item></channel></rss>