<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet type="text/xsl" href="RSS_xslt_style.asp" version="1.0" ?>
<rss version="2.0" xmlns:WebWizForums="http://syndication.webwiz.co.uk/rss_namespace/">
 <channel>
  <title>DevForce Community Forum : BOS performance worse than direct connection</title>
  <link>http://www.ideablade.com/forum/</link>
  <description>This is an XML content feed of; DevForce Community Forum : DevForce Classic : BOS performance worse than direct connection</description>
  <pubDate>Wed, 10 Jun 2026 11:37:01 -700</pubDate>
  <lastBuildDate>Thu, 29 Apr 2010 14:55:01 -700</lastBuildDate>
  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
  <generator>Web Wiz Forums 9.69</generator>
  <ttl>360</ttl>
  <WebWizForums:feedURL>www.ideablade.com/forum/RSS_post_feed.asp?TID=1764</WebWizForums:feedURL>
  <image>
   <title>DevForce Community Forum</title>
   <url>http://www.ideablade.com/forum/forum_images/IdeaBlade_logo_tm.png</url>
   <link>http://www.ideablade.com/forum/</link>
  </image>
  <item>
   <title>BOS performance worse than direct connection : Based on our experience, compression...</title>
   <link>http://www.ideablade.com/forum/forum_posts.asp?TID=1764&amp;PID=6725#6725</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://www.ideablade.com/forum/member_profile.asp?PF=477" rel="nofollow">ting</a><br /><strong>Subject:</strong> 1764<br /><strong>Posted:</strong> 29-Apr-2010 at 2:55pm<br /><br /><DIV>Based on our experience, compression has never been a bottleneck.&nbsp; However, if you look at the client and server configuration files, you may be able to remove the compression&nbsp;provider from the network stack.&nbsp; This will be different depending on whether you are using remoting or WCF, and needs to be done to both the client and server-side configs.</DIV><DIV>&nbsp;</DIV><DIV>The first thing I would do is to look at the issued queries in the traceviewer, debug log, or SQL Profiler.&nbsp;&nbsp;You may see something obvious that will lead you to the problem (e.g. hundreds of unexpected queries -&nbsp;one&nbsp;each for a Customer of a given&nbsp;Order, or an expansive&nbsp;query inversion&nbsp;that would result in 100,000 rows being returned).&nbsp; You can also write additional timing information to the debuglog to help narrow down the source of the problem.</DIV><DIV>&nbsp;</DIV><DIV>It is also extremely useful to isolate the operation in a small test case with no/minimal UI to identify the cause.</DIV><DIV>&nbsp;</DIV><DIV>Once you have something isolated, if you give me a description of the operation and the number &amp; size of objects being returned, I can suggest some other best practices or optimizations.</DIV><DIV>&nbsp;</DIV><span style="font-size:10px"><br /><br />Edited by ting - 29-Apr-2010 at 3:09pm</span>]]>
   </description>
   <pubDate>Thu, 29 Apr 2010 14:55:01 -700</pubDate>
   <guid isPermaLink="true">http://www.ideablade.com/forum/forum_posts.asp?TID=1764&amp;PID=6725#6725</guid>
  </item> 
  <item>
   <title>BOS performance worse than direct connection : Thanks Ting for your detailed...</title>
   <link>http://www.ideablade.com/forum/forum_posts.asp?TID=1764&amp;PID=6711#6711</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://www.ideablade.com/forum/member_profile.asp?PF=718" rel="nofollow">agrogers</a><br /><strong>Subject:</strong> 1764<br /><strong>Posted:</strong> 28-Apr-2010 at 9:20pm<br /><br />Thanks Ting for your detailed reply.&nbsp; I am talking with my developers about your suggestions.&nbsp; The database is running over a WAN connection so we are only getting Australian ADSL speeds - a lot slower than 10Mb. <br><br>Is it possible to disable the compression that the BOS is doing to eliminate that as a cause of the slowness?<br><br>Given that the BOS and the Non BOS connections are both over the wire, i would have guessed that the spanning&nbsp; issues with small queries would be common to both scenarios.<br><br>Thanks<br>Andrew<br>]]>
   </description>
   <pubDate>Wed, 28 Apr 2010 21:20:56 -700</pubDate>
   <guid isPermaLink="true">http://www.ideablade.com/forum/forum_posts.asp?TID=1764&amp;PID=6711#6711</guid>
  </item> 
  <item>
   <title>BOS performance worse than direct connection : What kind of connection do you...</title>
   <link>http://www.ideablade.com/forum/forum_posts.asp?TID=1764&amp;PID=6707#6707</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://www.ideablade.com/forum/member_profile.asp?PF=477" rel="nofollow">ting</a><br /><strong>Subject:</strong> 1764<br /><strong>Posted:</strong> 28-Apr-2010 at 5:45pm<br /><br /><DIV>What kind of connection do you have to the database?&nbsp; Over local area networks, the BOS is unlikely to reduce latency because the bandwidth is already very high, the network latency is low,&nbsp;and there is an extra step of object hydration, population, and compression which has to be performed on the server in order to send it to the client.</DIV><DIV>&nbsp;</DIV><DIV>A common source of performance problems actually has little to do with bandwith, but with the per query latency for a large number of small queries performed serially.&nbsp; This happens freqently when you have a master-detail grid with a nested binding.</DIV><DIV>&nbsp;</DIV><DIV>For example, if I'm showing a grid of Orders, and I want to display the Customer Name for each Order, I will bind to Order.Customer.Name in one of the columns (in a well normalized schema).&nbsp; When the grid is displayed, it will navigate one-by-one from each Order to its Customer to get the Name.&nbsp; That's one query for each row.&nbsp; The situation gets worse if I have other nested properties that I want to display (such as the Shipping Address).</DIV><DIV>&nbsp;</DIV><DIV>So, while you may have only issued one query explicitly (that for the Orders).&nbsp; You may be causing hundreds (or thousands) of queries to be issued in order to get the properties on the related objects.</DIV><DIV>&nbsp;</DIV><DIV>To solve this,&nbsp;use a span query, and when you fetch the Orders, you get the Customers and ShippingAddresses in the same trip to the server.&nbsp; This can make huge differences in&nbsp;performance.</DIV><DIV>&nbsp;</DIV><DIV>Another common problem is query inversion.&nbsp; I won't go into detail here, but if you have a large subquery, in order to cache the query, DevForce has to perform a query inverson and retrieve the objects from the subquery as well as the primary query.&nbsp; If the subquery results in a large number of objects (e.g. all products &lt; $100) this will be&nbsp;a problem.&nbsp; You can suppress query inversion which will prevent this from being cached and speed it up.</DIV><DIV>&nbsp;</DIV><DIV>Hope this helps!</DIV><DIV>&nbsp;</DIV><DIV>&nbsp;</DIV>]]>
   </description>
   <pubDate>Wed, 28 Apr 2010 17:45:31 -700</pubDate>
   <guid isPermaLink="true">http://www.ideablade.com/forum/forum_posts.asp?TID=1764&amp;PID=6707#6707</guid>
  </item> 
  <item>
   <title>BOS performance worse than direct connection : We implemented the BOS on our...</title>
   <link>http://www.ideablade.com/forum/forum_posts.asp?TID=1764&amp;PID=6684#6684</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://www.ideablade.com/forum/member_profile.asp?PF=718" rel="nofollow">agrogers</a><br /><strong>Subject:</strong> 1764<br /><strong>Posted:</strong> 28-Apr-2010 at 12:54am<br /><br />We implemented the BOS on our server not long ago expecting to see a speed improvement when retrieving data.&nbsp; Up until then we had been connecting directly to the remote SQL server.&nbsp; We have done some tests now between the two connection methods and it turns out that it is taking longer to grab the data *with* the BOS.<br><br>For example, a fairly complex form takes 20 seconds without the BOS to load and 29 seconds with the BOS.<br>Another much simpler form (when pulling back a lot of records) takes 25 seconds without the BOS and 26 second with it.<br><br>What we were expecting to see was a significant improvement due to the 10 to 1 compression of data that was coming from the BOS.&nbsp; <br><br>So I am guessing we have configured something quite badly/wrongly and wondering whether someone could give us some pointers on where to start looking.&nbsp; For starters, is there a switch to enable/disable compression when using the BOS?&nbsp; Or is this likely to be a server performance issue rather than a data issue?<br><br>Thanks<br>Andrew<br>]]>
   </description>
   <pubDate>Wed, 28 Apr 2010 00:54:09 -700</pubDate>
   <guid isPermaLink="true">http://www.ideablade.com/forum/forum_posts.asp?TID=1764&amp;PID=6684#6684</guid>
  </item> 
 </channel>
</rss>