• Skip Navigation |
  • Accessibility 
IT-Director.com Logo
  • Metastorm leverages Azure to leap into Cloud-based collaborative modelling
  • Uwhat?
  • A Clear Message for Vendors In the SMB Technology Market
 

Main navigation - go to a section of this website:

  • ARCHIVE
  • PAPERS
  • EVENTS
  • NEWSWIRE
  • BLOGS

  

Member Login | Become a Member

 
 
DOMAINS
  • Enterprise
  • SME
  • Business Issues
  • Technology
    • Data Management
    • Applications
    • Infrastructure
    • Systems Mgmt
    • Security
    • Mobile
    • Storage
    • Personal Productivity
  • Services
  • Channels
FEATURED EVENTS
  • Data Protection Essential Knowledge - Level 2
    5th August
    Edinburgh, United Kingdom
  • Enterprise Architects TOGAF™ v9 Level 1 & Level 2 Training course - Special UK price of £1599 plus 17.5% vat
    23rd August - 26th August
    London, United Kingdom
POPULAR PAPERS
  • Telecoms re-invention - death of the traditional telco by Quocirca
  • A gift from IT to the business by Quocirca
  • Keeping online orders flowing by Quocirca
TRANSLATE PAGE



USEFUL LINKS
  • Last 7 Days
  • Archives
  • Market Place
  • Top Articles
INTERACT
  • Advertising
  • Site Feedback
  • Newsletters
  • Contact Us
  • Registration
CONTENT FEED

Technology
RSS Feed:

RSS Icon

What is RSS?

RANDOM QUOTE
Observations - "Alcohol is the anaesthesia by which we endure the operation of life." - George Bernard Shaw

ADVERTISEMENT
Analysis

Simple infrastructure for EDA processor agent

Peter Abrahams By: Peter Abrahams, Practice Leader - Accessibility and Usability, Bloor Research
Published: 14th July 2005
Copyright Bloor Research © 2005
Logo for Bloor Research
Page Tools

Request Reprints
Tell A Friend
Contact Author

More from author
  • July 2010
    New Working Draft of Authoring Tool Accessibility Guidelines (ATAG 2.0)
  • June 2010
    Ed Vaizey, The New Digital Minister, is the keynote speaker at e-Access ’10
  • June 2010
    Please Review the latest BSI Accessibility Code of Practice now
  • April 2010
    Bloor Invites you to e-Access '10
  • April 2010
    Improve accessibility with the power of Powder
  • April 2010
    Accessible Transactional Reports
  • April 2010
    Get educated in Design for All and Accessible ICT

Event Driven Architecture (EDA) has had less press than its relation, Service Oriented Architecture (SOA), but it is probably going to be just as important.

The definition of EDA begins with a business event, which is anything that changes the status of the business in some way. The events can be of varying importance ranging from a major event, such as a customer placing an order, to a more trivial event, such as a product with an RFID tag passing a sensor, or it could even be a clock tick that signals the start of a new price list.

All of these business events can be represented in the IT world by a message, and in the EDA world that will be an XML message. EDA defines two concepts around these messages:

  • Streams of messages
  • Agents that influence these streams

The agents can be categorised into:

  • Generator agents that create new messages based on external events
  • Processor agents that process events
  • Integration agents that ensure that generated events are routed to all the processor agents that need to process them

In this article I want to concentrate on the technology required to support a processor agent. A processor agent is an application driven by a stream of messages. It is given a message; it processes the message including persisting some data. It may also return a message to the generator or generate new events for consumption by other agents. It could further consume services using standard SOA interfaces.

The developer of a processor agent should be able to write it as if it was a single thread and there were no other related tasks running concurrently. Writing in this way removes much of the complexity required to ensuring scalability, determinism and persistence. Removing this complexity obviously reduces the cost and time required for the development.

WareLite Business Operating Support System (WL BOSS) provides the development environment and infrastructure for developing processor agents in this way. WL BOSS has four main components: the node manager, persistence driver, the global lock manager, and the integrated development environment.

The node manager is the environment within which a processor agent runs. When the node is idle the node manager interrogates a message queue (in the current release this is a Microsoft MSMQ queue, but future releases will support other queue managers), and based on the event type on the queue and the role of the event generator, the node manager will pass the event to the correct agent. One queue can be serviced by multiple nodes, and these nodes can be on multiple hardware nodes. The ability to connect multiple node managers to one queue provides a simple linear scalability. It also provides inherent reliability because if one node fails the others will carry on unaffected.

The persistence driver is the interface to a persistent data store (in the current release this is Microsoft SQL Server, but future releases will include other persistence technology). WL BOSS uses the persistence store as a bucket and does not depend on the persistent store to provide scalability or determinism. The drivers decide where the data should be stored and can store one object type across multiple physical databases if that will provide the required scalability and performance. The mapping of data onto the physical implementation is defined by parameters outside the application and can be changed without any change to the processor agent.

The global lock manager's role is to provide locking across the different nodes and different persistence stores. Deadlock detection is provided and this is coordinated with the node managers.

At first sight it was not clear to me what made this technology different as most of the concepts are not new and have been implemented many times before. However, on closer inspection it became obvious that by developing this infrastructure only to support EDA processor agents it has been possible to fully support scalability, determinism and persistence in a much simpler way. The benefits of the simplicity are higher performance, lower cost and simpler implementation.

Although this is a general purpose solution I expect that its early use will be to process new types of events; these might include RFID, other types of positioning sensors, ticketing applications etc. In all these situations the low cost of processing and the scalability should make it very attractive.

Reader Comments

Sorry, we are no longer accepting comments on this item. We suggest trying to contact the author directly.

14th July 2005: 'Bernd Eckenfels' said:

If you add interface description aka event typing with WSDL, you have an ESB based SOA. It is the method we build our B2B Gateway (based on JMS and EJB App Servers).

Reply to Bernd Eckenfels?

The messages above were all contributed by IT-Director.com readers. Whilst we take care to remove any posts deemed inappropriate, we can take no responsibility for these comments. If you would like a comment removed please contact our editorial team.

  • Site Map
  • | Terms of Use
  • | Privacy

Published by: IT Analysis Communications Ltd.
T: +44 (0)1908 880760 | F: +44 (0)1908 880761