Search
Lori MacVittie - Two Different Socks
You are here: DevCentral > Weblogs

posted on Wednesday, December 20, 2006 1:27 PM

Is the pipe half-full or half-empty?

David Linthicum does a good job of pointing out the factors that can affect performance of your SOA in his recent Real World SOA entry: When to Consider SOA Performance.

I particularly liked rule #3:

"Third, use of too many fine grained services may cause performance problems. Indeed, you should not be afraid to leverage fine grained services within your SOA. However, you need to understand the performance issues with doing so, taking careful consideration of the network bandwidth and how other applications leverage the services."

You should indeed take the network into careful consideration when you're architecting your SOA, but not just regarding how much bandwidth is available. Too often we think of the network as nothing more than a pipe, and blame poor performance on limited bandwidth. It's often the case, however, that the network pipe is actually underutilized and poor performance is the result of other network-based mitigating factors, like the overhead inherent in TCP connections. It's that second half of David's sentence that is truly important when considering how distributing fine-grained services affects the performance of your SOA.

I chatted with an architect at Gartner's Integration and Web Services Summit earlier this month who clearly articulated his understanding of this problem - too many TCP connections are often the root cause of poor performance, especially in a JavaEE-based architecture. We talked about that earlier this month in When Reuse Becomes a Four Letter Word. I won't repeat the discussion, except to say that the more services you connect to, the higher the cost of TCP session management across the application.

Luckily you can offload some of that processing to alleviate the overall burden on the server and thereby increase the efficiency of the platform. TCP sessions are costly, and if your application comprises a lot of services that's a lot of overhead. Using an application delivery controller like BIG-IP can not only offload a lot of that overhead but in many cases it can optimize TCP as well, which means increasing the efficiency of servers as well as speeding up the delivery of services-based applications.

Imbibing: Mountain Dew


Posted In: SOA Delivery, Performance,

Feedback

No comments posted yet.

Let Me Know What You Think


Please use the form below if you have any comments, questions, or suggestions.

Title:
 
Name:
 
Email: (so we can show your gravatar)
Website:
Comment: Allowed tags: blockquote, a, strong, em, p, u, strike, super, sub, code
 
Please add 7 and 5 and type the answer here:

Blog Stats

Posts:980
Comments:1685
Stories:0
Trackbacks:583
  

Image Galleries

  

Application Delivery

  

Cloud Computing

  

Random

  

Security

  

Chat Catcher

82,243 Members in 102 Countries and Growing!

Join DevCentral Today!

About DevCentral

DevCentral has been a successful, thriving community for many years. We have always strived to bring you the best technical documentation, discussion forums, blogs, media and much more that we can.

So dive in, get familiar with DevCentral. We hope you like it, we hope it makes your job easier, and lets you get that much more power out of the community. To learn more, make sure to check out the Getting Started section. And if you have any problems, or think something could be easier to use, drop us a line to let us know.

Got It !

We've received your comment and transmitted it directly to DevCentral HQ.

Thanks for taking time to let us know what's on your mind. At DevCentral | Community Matters!

Get In Touch With Us

Have questions, suggestions or just want to get something off your chest?

Use our handy form below to Direct Connect with DevCentral Mission Control.

Send Us Feedback       or