I'm implementing API Manager talking to ESB talking to DSS. I'm interested in best practices/design for these 3 products. Lets take for Example an employee. Lets say an employee has 3 tables in the database Person, Location, Image. I was thinking of creating 3 API's in DSS (Person, Location, Image). then in ESB I would just have GetPerson and ESB would call to Person with PersonID and get person information along with LocationID and then make a call to Location in DSS to get location information, and then make a call to Image to get Image information and would like to put the XML together in ESB and return to user. Is that possible or even the best practice? Right now I just have a Person in DSS and in within there it puts together the Person XML with Location and Image information (fairly easy). It just seems to make logical sense to separate them out in the DSS so if I need Location for something other than Person I can just call location with the locaitonid and not keep creating API's in DSS for every instance that needs Location. Not sure of the best design pattern but it seems a lot more difficult trying to make the 3 different call in ESB and putting the results together into a single XML file to return to the user.
1 Answers
1
votes
It is possible by using a concept called service chaining and ggregator mediator in ESB.
For service chaining refer http://docs.wso2.org/display/ESB460/Service+Chaining and for aggregator mediator refer http://docs.wso2.org/display/IntegrationPatterns/Aggregator