Autonomic Web services
Web services are great. Web services are proliferating. The future is Web services. These statements are all probably (0.9) true. However Web services are also scary especially for operations managers. Think of the vision of multitudes of Web services all interconnected and dependent on each other, some of them internal, some external, some of them shared, some of them using Java and Linux, others using .NET, each doing their bit but none of them in overall control.
All fine and dandy when everything is running smoothly but what happens when something goes wrong such as a machine breaks, there is a surge in one part of the network, or one service starts producing rubbish. Think about the recent losses of power to the East Coast and then to a great swathe of London. Could a similar disaster happen to a net of Web services? Undoubtedly could and inevitably will unless the parts and the whole are designed to react to it.
The first step in such a design must be adequate monitoring of the environment and being able to spot out of line situations: queue build ups, slow/no response, high reject rates, in general being able to recognise that service levels are not being met. The next step is to make that visible to operations with RAG displays and the like; and give them the tools to react to out of line situations.
Having detected a problem the real cause needs to be found (I recently went to the physiotherapist complaining of an acute pain in my knee, careful causal analysis showed that the problem was emanating from my back, that was fixed and I am back on the squash court). Tools are required for assisting in root cause analysis.
In reality to react quickly and appropriately much of this needs to be automated. The problem needs to be identified, causal analysis carried out then action taken to resolve the issue. Actions that could be taken include adding more resource, routing to services with spare capacity and isolating a failing service. A more advance solution would include telling the Web service to act differently. A classic example of this is point of sale terminals. They will have limits for card transaction which will vary depending on whether the connections are available and how fast they are responding, the store makes a risk assessment of the cost of loosing a sale against accepting a fraudulent transaction. In this example the application used to do its own monitoring and change its actions accordingly but in a Web services environment it would be ideal if the service was made aware of the problem by an external agent.
Many of the Web services will be shared by independent users and the whole may well be running in a shared service centre. So a final issue that needs attention is how to provide status to individual users without exposing information that they are not interested in, or should not see.
Has this put you off Web services? Would you want to build from scratch a system to solve this for your own system, one hopes not? Would we tell you about this without any solution, well maybe, but not this time?
I wrote about Actional earlier this year. They have recently announced V5.0 which includes significant extensions and improvements to their product line. Two that resolve the issues in this article are:
- Actional Service Stabilizer(tm) Technology which automates reactions to changing service and service network conditions, and include the functions to build Web services that can react to alerts of changes in their environment.
- Actional Looking Glass MyServices(tm) Portal which is a browser-based user-customizable service monitor enabling technical and non-technical audiences to see only what they are interested in.
Copyright 2003. Originally published by IT-Director.com, reprinted with permission. IT-Director.com provides IT decision makers with free daily e-mails containing news analysis, member-only discussion forums, free research, technology spotlights and free on-line consultancy. To register for a free e-mail subscription, click here.
For more information:
- Looking for free research? Browse our comprehensive White Papers section by topic, author or keyword.
- Are you tired of technospeak? The Web Services Advisor column uses plain talk and avoids the hype.
- For insightful opinion and commentary from today's industry leaders, read our Guest Commentary columns.
- Hey Codeheads! Start benefiting from these time-saving XML Developer Tips and .NET Developer Tips.
- Visit our huge Best Web Links for Web Services collection for the freshest editor-selected resources.
- Visit Ask the Experts for answers to your Web services, SOAP, WSDL, XML, .NET, Java and EAI questions.
- Couldn't attend one of our Webcasts? Don't miss out. Visit our archive to watch at your own convenience.
- Choking on the alphabet soup of industry acronyms? Visit our helpful Glossary for the latest lingo.
- Discuss this article, voice your opinion or talk with your peers in the SearchWebServices Discussion Forums.