More chaos as an OWSM policy by Jeroen Ninck Blok

imageErrors & failures

So it is very easy to implement a happy flow. However handling errors, rolling back transactions and recovering from errors and failures can be quite challenging. It is not possible to find all the possibilities during development or design. Some errors or failures will only occur when very rare circumstances come into play together. Then all the parts of the application either will handle the error and will ensure that no data is lost and the application survives or not. In the last case people lose data, applications crash and managers get upset.

A very good read on this topic is the book Release It!.

A policy

Most of the time I write services in either Oracle Service Bus or Oracle SOA Suite. I can mock expected error behaviour, however sometimes having errors when you don’t expect them can give you new insite into the stability and resilience of the application.

To create (unexpected) errors a Managed Server can be stopped, data sources can be removed or entire virtual machine’s can be deleted. However these Managed Servers are quite heavy and when I ask somebody if I can break something during a test I am usually asked to get a cup of coffee 😉

So I wanted a different method (unfortunately not implemeted at a customer) so I created an Oracle Web Service Manager (OWSM) policy. I was inspired by the Chaos Monkey application made by Netflix. The Chaos Monkey application creates havoc. The OWSM policy should also create problems, but in a very modest way. It generates an error on a random basis.

The OWSM framework is not really meant for this kind of policies, but it is a start! The sources can be found on my GitHub repository.

Building & installing the policy

The policy is build using JDeveloper. I build it using JDeveloper, but I think it can be back ported to 12.1.3. There are two deployment profiles: Read the complete article here.

SOA & BPM Partner Community

For regular information on Oracle SOA Suite become a member in the SOA & BPM Partner Community for registration please visit (OPN account required) If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn image[7][2][2][2] Facebook clip_image002[8][4][2][2][2] Wiki

Technorati Tags: SOA Community,Oracle SOA,Oracle BPM,OPN,Jürgen Kress

About Jürgen Kress
As a middleware expert Jürgen works at Oracle EMEA Alliances and Channels, responsible for Oracle’s EMEA Fusion Middleware partner business. He is the founder of the Oracle SOA & BPM and the WebLogic Partner Communities and the global Oracle Partner Advisory Councils. With more than 5000 members from all over the world the Middleware Partner Community is the most successful and active community at Oracle. Jürgen manages the community with monthly newsletters, webcasts and conferences. He hosts his annual Fusion Middleware Partner Community Forums and the Fusion Middleware Summer Camps, where more than 200 partners get product updates, roadmap insights and hands-on trainings. Supplemented by many web 2.0 tools like twitter, discussion forums, online communities, blogs and wikis. For the SOA & Cloud Symposium by Thomas Erl, Jürgen is a member of the steering board. He is also a frequent speaker at conferences like the SOA & BPM Integration Days, JAX, UKOUG, OUGN, or OOP.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: