Robert Jan - Tuesday, October 28, 2008 - 2:56 PM

Immediately after the key note, I ran to the lunch session of Nicholas Allen.

I’m a close follower of his blog, because the guy knows so much about the inner workings of WCF. I’ve used his info lots of times when writing WCF stuff.

This talk was all about performance. About what bottlenecks there are at which level, and how to mitigate them.

DSC_4548

DSC_4552

He explained this by using a Push Pull principle. All communication flowing over the WCF stack will have several parts pushing or pulling data. Performance has a lot to do with optimizing the manner these parts interact.

DSC_4553

When mapping this principle on WCF you can see parts that push and then parts that pull. Whenever a switch between the two takes place, you have an interesting performance case. Because at that point, message pumping and/or buffering will take place.

DSC_4554
All these points have all sorts of configurable performance knobs to tweak and tune. The above gives us a much clearer insight of what you are indeed tweaking/tuning so you can understand what the knob does and what consequence it may have.

So when looking at the message pump of the server side part of a binding, you will see the following:

 

 

 

DSC_4557

When zooming in a bit more, you soon get a lot of detail (and you might get lost!):

DSC_4558

An important lesson you can take out of this last screenshot, is the fact that you can see that binding to a thread takes place in the 6th part of the pump. All that is before that is a potential performance issue.  So watch out with your authentication providers and message inspectors!!


Posted in: PDC 2008 , WCF  Tags:

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Page List

    Calendar

    «  September 2010  »
    MoTuWeThFrSaSu
    303112345
    6789101112
    13141516171819
    20212223242526
    27282930123
    45678910
    View posts in large calendar

    Recent Comments

    Feedburner Statistics 9/8/2010
    23 Readers ~ 58 hits ~ 0 reach

    Disclaimer
    The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway.

    © Copyright 2010 Inwit.nl