Friday, June 7, 2013

Design Enterprise Integration Patterns with WSO2 Developer Studio - Part 1


Most of the Enterprise Integrations are having common requirements, behaviors though Solution Architects, Designers invented their solutions in various ways. Enterprise Integration Patterns are some standards in architecting integration Applications. WSO2 Enterprise Service Bus can be used to implement these Enterprise Integration Patterns in a very decent way using its concepts like Proxy Services, Mediators, Endpoints, APIs etc.

WSO2 Developer Studio is providing a drag and drop graphical composition tool to make life easier to create ESB configurations using few drag and drops.  

This is the first part of the series of blog posts.  
With this series of blog posts I'm going to explain how we can use WSO2 Developer Studio to create the ESB configurations (Synapse configurations) which implements above mentioned Enterprise Integration Patterns.

NOTE
In these blog posts I'm using same sample codes in WSO2 ESB Enterprise Integration Patterns documentation


Integration Pattern - Message Channels 


You can find more information about this pattern here  




We can use WSO2 ESB as the Messaging System in the above figure.
Following ESB configuration can be used to configure the WSO2 ESB to act as the Messaging System.


   
      
         
            

Following figure depicts how we can use WSO2 Developer Studio to create the above ESB configuration.

















 

 

 

 

 

 

 

 

 

 

 

Integration Pattern - Pipes and Filters


You can find more information about this pattern here




Here we can use main sequence. Inside main sequence it is calling "PipesAndFilters" sequence.


    
        
    
    
        
    

Following figure depicts the way it represents the above configuration. In above configuration there is no "Endpoint" itself. But we can see an "Endpoint" in the Editor. The reason is there is an "Endpoint" inside the  "PipesAndFilters" sequence and Editor will represent that "Endpoint" inside main sequence. So that user can get a clear idea about the message flow. 


























Here is the configuration for "PipesAndFilters" sequence. 


    
    
        
            
                
                    
                        
                            

Following figure depicts the way editor represents the above configuration. Please note that there is no two endpoints but we are showing the same "Endpoint" in both main sequence and  "PipesAndFilters" sequence.