<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Distributed-Systems on Brian Faust</title><link>https://vacua.dev/tags/distributed-systems/</link><description>Recent content in Distributed-Systems 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/distributed-systems/rss.xml" rel="self" type="application/rss+xml"/><item><title>A Transaction Defines What Must Succeed Together</title><link>https://vacua.dev/thoughts/a-transaction-defines-what-must-succeed-together/</link><pubDate>Wed, 01 Feb 2017 00:00:00 +0000</pubDate><guid>https://vacua.dev/thoughts/a-transaction-defines-what-must-succeed-together/</guid><description>&lt;p&gt;A booking flow reserved funds, completed the remote booking, and captured the
funds. Only then did synchronous response processing fail.&lt;/p&gt;
&lt;p&gt;The remote booking existed. The funds were captured. The caller received a
failure.&lt;/p&gt;
&lt;p&gt;The capture was individually valid, and its own database transaction committed
cleanly. It was still too early. We had drawn the success boundary around
“remote booking returned” while the operation promised something larger: a
complete booking result which the caller could use.&lt;/p&gt;</description></item><item><title>A Correlation Identifier Is a Boundary Contract</title><link>https://vacua.dev/thoughts/a-correlation-identifier-is-a-boundary-contract/</link><pubDate>Thu, 01 Sep 2016 00:00:00 +0000</pubDate><guid>https://vacua.dev/thoughts/a-correlation-identifier-is-a-boundary-contract/</guid><description>&lt;p&gt;A shipment request failed somewhere after payment and before its documents were
ready. The application, queue worker, and remote adapter all had logs. None of
them shared an identifier.&lt;/p&gt;
&lt;p&gt;The search began with timestamps, account details, and values which looked
related. Payment was a plausible lead. So were several nearby remote calls.
Some trails ended only after hours of reading because they belonged to
different requests which happened at nearly the same time.&lt;/p&gt;</description></item></channel></rss>