<?xml version="1.0"?>
<oembed><version>1.0</version><provider_name>.NET Blog</provider_name><provider_url>https://devblogs.microsoft.com/dotnet</provider_url><author_name>Glenn Condron [MSFT]</author_name><author_url>https://devblogs.microsoft.com/dotnet/author/glennc/</author_url><title>Messaging Practices - .NET Blog</title><type>rich</type><width>600</width><height>338</height><html>&lt;blockquote class="wp-embedded-content" data-secret="rsztmt48UO"&gt;&lt;a href="https://devblogs.microsoft.com/dotnet/messaging-practices/"&gt;Messaging Practices&lt;/a&gt;&lt;/blockquote&gt;&lt;iframe sandbox="allow-scripts" security="restricted" src="https://devblogs.microsoft.com/dotnet/messaging-practices/embed/#?secret=rsztmt48UO" width="600" height="338" title="&#x201C;Messaging Practices&#x201D; &#x2014; .NET Blog" data-secret="rsztmt48UO" frameborder="0" marginwidth="0" marginheight="0" scrolling="no" class="wp-embedded-content"&gt;&lt;/iframe&gt;&lt;script type="text/javascript"&gt;
/* &lt;![CDATA[ */
/*! This file is auto-generated */
!function(d,l){"use strict";l.querySelector&amp;&amp;d.addEventListener&amp;&amp;"undefined"!=typeof URL&amp;&amp;(d.wp=d.wp||{},d.wp.receiveEmbedMessage||(d.wp.receiveEmbedMessage=function(e){var t=e.data;if((t||t.secret||t.message||t.value)&amp;&amp;!/[^a-zA-Z0-9]/.test(t.secret)){for(var s,r,n,a=l.querySelectorAll('iframe[data-secret="'+t.secret+'"]'),o=l.querySelectorAll('blockquote[data-secret="'+t.secret+'"]'),c=new RegExp("^https?:$","i"),i=0;i&lt;o.length;i++)o[i].style.display="none";for(i=0;i&lt;a.length;i++)s=a[i],e.source===s.contentWindow&amp;&amp;(s.removeAttribute("style"),"height"===t.message?(1e3&lt;(r=parseInt(t.value,10))?r=1e3:~~r&lt;200&amp;&amp;(r=200),s.height=r):"link"===t.message&amp;&amp;(r=new URL(s.getAttribute("src")),n=new URL(t.value),c.test(n.protocol))&amp;&amp;n.host===r.host&amp;&amp;l.activeElement===s&amp;&amp;(d.top.location.href=t.value))}},d.addEventListener("message",d.wp.receiveEmbedMessage,!1),l.addEventListener("DOMContentLoaded",function(){for(var e,t,s=l.querySelectorAll("iframe.wp-embedded-content"),r=0;r&lt;s.length;r++)(t=(e=s[r]).getAttribute("data-secret"))||(t=Math.random().toString(36).substring(2,12),e.src+="#?secret="+t,e.setAttribute("data-secret",t)),e.contentWindow.postMessage({message:"ready",secret:t},"*")},!1)))}(window,document);
//# sourceURL=https://devblogs.microsoft.com/dotnet/wp-includes/js/wp-embed.min.js
/* ]]&gt; */
&lt;/script&gt;
</html><thumbnail_url>https://devblogs.microsoft.com/dotnet/wp-content/uploads/sites/10/2019/02/swimlane-cross-platform.png</thumbnail_url><thumbnail_width>636</thumbnail_width><thumbnail_height>300</thumbnail_height><description>This post is a collection of content from David Boike from the Particular.net blog calling out some common problems and solutions for building message based distributed systems. They are relevant to anyone building apps using messaging, and anyone building a Microservice based solution should definitely be interested in the first post about slimming down events. [&hellip;]</description></oembed>
