<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: I Hate WSDL</title>
	<atom:link href="http://www.udidahan.com/2008/03/28/i-hate-wsdl/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.udidahan.com/2008/03/28/i-hate-wsdl/</link>
	<description>Enterprise Development Expert &#38; SOA Specialist</description>
	<lastBuildDate>Thu, 09 Sep 2010 15:41:11 -0500</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: udidahan</title>
		<link>http://www.udidahan.com/2008/03/28/i-hate-wsdl/comment-page-1/#comment-19973</link>
		<dc:creator>udidahan</dc:creator>
		<pubDate>Wed, 02 Apr 2008 20:52:02 +0000</pubDate>
		<guid isPermaLink="false">http://udidahan.weblogs.us/2008/03/28/i-hate-wsdl/#comment-19973</guid>
		<description>Joel,

You can always try to call it &quot;one-way messaging&quot; as opposed to &quot;asynchronous messaging&quot; :)

I&#039;ve already mentioned before that users/operators care how fast the response comes - not how it comes, so that&#039;s not an issue. Rather, when using one-way messaging, we often get better throughput resulting in fast response times overall, so it&#039;s actually better for users.

In terms of complexity, I think that the whole solution needs to be examined. What I mean by that is that it is simpler to solve problems like robustness using one-way messaging than with RPC. You also often get a more flexible solution (one request/multiple responses) that often decreases the complexity of the solution (one gigantic response structure with bit fields saying what it means).

It looks like you want to go in the right direction - don&#039;t give up :)</description>
		<content:encoded><![CDATA[<p>Joel,</p>
<p>You can always try to call it &#8220;one-way messaging&#8221; as opposed to &#8220;asynchronous messaging&#8221; <img src='http://www.udidahan.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>I&#8217;ve already mentioned before that users/operators care how fast the response comes &#8211; not how it comes, so that&#8217;s not an issue. Rather, when using one-way messaging, we often get better throughput resulting in fast response times overall, so it&#8217;s actually better for users.</p>
<p>In terms of complexity, I think that the whole solution needs to be examined. What I mean by that is that it is simpler to solve problems like robustness using one-way messaging than with RPC. You also often get a more flexible solution (one request/multiple responses) that often decreases the complexity of the solution (one gigantic response structure with bit fields saying what it means).</p>
<p>It looks like you want to go in the right direction &#8211; don&#8217;t give up <img src='http://www.udidahan.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Joel</title>
		<link>http://www.udidahan.com/2008/03/28/i-hate-wsdl/comment-page-1/#comment-19966</link>
		<dc:creator>Joel</dc:creator>
		<pubDate>Wed, 02 Apr 2008 18:09:32 +0000</pubDate>
		<guid isPermaLink="false">http://udidahan.weblogs.us/2008/03/28/i-hate-wsdl/#comment-19966</guid>
		<description>I have been trying to move our architecture over to an asynchronous messaging based solution for quite a while now.  Unfortunately, people hear the term &quot;asynchronous&quot; and immediately start bringing up performance or complexity concerns.  The most common concerns I hear are that the solution needs to be &quot;real-time&quot; because an operator is waiting for the response and that the client will need to implement a correlation mechanism.  They immediately assume that because someone is sitting there waiting the whole solution needs to be synchronous, which is, obviously, an incorrect assumption.

Even reliability concerns can be addressed by asynchronous messaging.  I&#039;ve always argued that I would rather build reliability into the workflow logic/business process than have to rely on some potentially complex reliability mechanism like ebMS or WS-RM.  Why is it such a crime to have a process wait for an asynchronous response that is correlated to the request?  If a response isn&#039;t received in x amount of time, resend or perform some other form of recovery.  Doing this allows you much more flexibility, in workflow and choice of transports, and probably increases overall interoperability because you don&#039;t have to worry whether a partner&#039;s environment of choice supports a specific reliability mechanism.

I keep telling myself that I need to set aside some time to look at nServiceBus but managing BizTalk&#039;s complexity is becoming a full-time job.</description>
		<content:encoded><![CDATA[<p>I have been trying to move our architecture over to an asynchronous messaging based solution for quite a while now.  Unfortunately, people hear the term &#8220;asynchronous&#8221; and immediately start bringing up performance or complexity concerns.  The most common concerns I hear are that the solution needs to be &#8220;real-time&#8221; because an operator is waiting for the response and that the client will need to implement a correlation mechanism.  They immediately assume that because someone is sitting there waiting the whole solution needs to be synchronous, which is, obviously, an incorrect assumption.</p>
<p>Even reliability concerns can be addressed by asynchronous messaging.  I&#8217;ve always argued that I would rather build reliability into the workflow logic/business process than have to rely on some potentially complex reliability mechanism like ebMS or WS-RM.  Why is it such a crime to have a process wait for an asynchronous response that is correlated to the request?  If a response isn&#8217;t received in x amount of time, resend or perform some other form of recovery.  Doing this allows you much more flexibility, in workflow and choice of transports, and probably increases overall interoperability because you don&#8217;t have to worry whether a partner&#8217;s environment of choice supports a specific reliability mechanism.</p>
<p>I keep telling myself that I need to set aside some time to look at nServiceBus but managing BizTalk&#8217;s complexity is becoming a full-time job.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
