Free Newsletters

   All InfoWorld Newsletters
Real World SOA | David Linthicum » SOA Performance Modeling

November 01, 2007 | Comments: (0)

SOA Performance Modeling

I'm not sure I'm giving birth to a new TLA, figure somebody has used this by now. However, I wanted to touch upon the concept of performance modeling and its importance with SOA.

Performance modeling is nothing new; however its use within the problem domain of SOA is very important. So, how do you go about it?

Performance modeling is creating predictive models that will allow you to determine the performance of your system, in this case SOA, under different loads and configurations. It's in essence a mathematical model, considering real variables, that effect overall performance. Thus, if done right, your model should provide a pretty good prediction of the impact of changes on the architecture as it relates to performance. Let's face it SOAs are always going to change, and performance is always going to be an issue.

While performance modeling was fairly simple in the days of centralized systems, or perhaps systems that were slightly distributed, SOA is a very different animal. Indeed, SOAs are widely distributed, loosely coupled, and deal with different data sizes and data rates, and all of the systems have very different performance characteristics. Thus, SOAs are complex, and difficult to model.

Despite the complexities, it's clear to me that performance models are necessary for SOA. This means that performance should always be a consideration during the design, proof-of-concept, deployment, and operation of an SOA. However, most SOA architects have no idea how to go about doing SOA performance modeling, or distributed computing modeling, with is basically the same thing.

The core concepts are:

  • Gather heuristics around all systems within the SOA.
  • Profile communications.
  • Profile the process layers.
  • Profile the services layer.
  • Profile the data layer.
  • Profile changing behaviors under loads.

Profile all core components.

Once that is done, you construct a distributed computing model that best represents the architecture, test it to determine its accuracy, and then leverage that model as a check point as your SOA changes over time. Pretty simple, but most SOAs don't have one. Do you?

See me live at:

InfoWorld's SOA Executive Forum

Building a Foundation for Continuous Change

November 7-8, 2007

Millennium Hotel, New York City

 

 

 

 

Posted by Dave Linthicum on November 1, 2007 06:29 PM


RATE THIS ARTICLE:





 

  •  
  • COMMENTS




Good to see that you are calling out Industry Analysts for their lack of architecture coverage. I wonder what would happen if those who cover ESBs where to look at security considerations such as whether the ESB products support SAML, XACML and where written securely.

Posted by: James at October 29, 2007 04:45 AM

David,

Performance modeling of an SOA is interesting, and quite far from "pretty simple."

The challenge becomes how to profile the components as a total system... profiling each component inevitably leads to a very silo-ed view of performance in the SOA. Not that it's totally unhelpful, or even unnecessary, in fact at some level it's definitely important. But, I don't believe doing so gets you to a point where you can model the SOA.

Let me give you an example of something that comes up all the time in general, and then a very specific case.

The generalization is when a "management system" shows all systems green... yet things are still not "working."

How could that be? Don't know, but it happens all the time. And, perhaps because I'm sensitive as a result of my professional experience, I realize when it's happening to companies I do business with personally. Have you ever tried to change an address online with a bank or credit card? Many let me, but not one of more than 10 did it properly on the first try, and most needed a phone call or email to get it correct in the end. I'm sure all their systems management tools showed that they were working fine! Of course, I can't be sure -- but not one apologized for a system failure when I spoke to them.

I think it's very easy to take a simplistic approach; unfortunately, it's not a simplistic problem.

Posted by: David Bressler at November 13, 2007 07:37 PM

Technology White Papers

 

InfoWorld Technology Marketplace

» Technology White Papers Library

Technology White Papers by Topic

Technology White Papers E-mail Alert

Find out when the latest white paper is available:
 
 
» BUY A LINK NOW

Sponsored Technology Links