Results 1 to 2 of 2

Thread: Web Service based application - Cache as a Master Data Source

  1. #1
    Join Date
    Feb 2009
    Posts
    10

    Question Web Service based application - Cache as a Master Data Source

    Hi,

    We want to develop a shopping web-application that interacts with system(s) of many vendors. It could be thro. web-services or any other means.

    Moreover, vendors can register themselves and the data will be stored in DB.
    Now, when the customer searches data from vendors in DB as well as other vendors have to be shown.

    So, we have planned to use 'cache as a master data source'. The proposed architecture is attached.

    1) Will it work?

    2) How to implement this with J2EE (Spring & Hibernate)?

    3) Sites like redbus.in, makeMyTrip.com have similar functionality. So, what is the standard way to do that?
    Attached Images Attached Images
    Last edited by vss123; Mar 10th, 2009 at 12:32 AM. Reason: Image attached

  2. #2

    Default

    It will work, but it will also introduce duplication of data. I can see that this could result in higher cost in terms of maintenance in the long run. I mean, how is the data from each data source is going to be replicated? Any thoughts on backing up the cached master data (if needed)? How would you ensure that the cached master data is kept up to date?

    If you look at other companies (that provide services for booking flights, holidays, etc.) they use middleware integration, such as MQ or a message broker. So a Service Oriented Architecture (SOA) design is adopted, and also allows for asynchronous calls.

    The architecture design is not that far off. But instead of looking at databases for caching as the master data perhaps the use of a message broker may be the one to go for. IBM MQ is an expensive option, but there are Open Source alternatives such as ActiveMQ (http://activemq.apache.org/) that is powerful and I recommend. I see that you already have adapters in place so they can be utilised.

    The cheaper option is to use Enterprise Service Bus technologies (such as Tibco (proprietary) or MuleESB (http://www.mulesource.org - open source))).

    It is all possible to use Spring for your solution. In fact, ActiveMQ and MuleESB integrates very well with Spring.

    Hope this helps.


    Shah.

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •