Large volumes in a SOA world
I'm pretty new to the world of SOA and I have read already a lot about it. There's one thing however that is still not clear to me which is handling large data volumes.
So far our company used "feeds" to integrate between different applications. For example, AS400 would spit out a large number of xml files which are picked up by another开发者_如何学编程 app that processes it and stores it inside their internal database. The drawback is that we have to handle this file feeds (on both ends) with all possible problems that comes along. Multiply this a number of times, different applications that require integration, different teams, lack on overall rules for this and you can imagine where we are today.
The company decided to adopt a SOA strategy and therefore I'm looking into this matter. I wonder if the SOA concept includes problems like this (integration issues as mentioned above). But it is hard to find information on this topic. Is it because SOA and large volumes is just not doable, is it because I need to look to somewhere else to solve this issue (Master data management perhaps), or do I need to start fighting all this large data volume feeds and ban them from our company?
thanks already for any insight in this matter :)
SOA is just a set of architecture principles and none of these principles is restricting or encouraging throughtput and performance. You can say designing for SOA (loose coupling, autonomy, governance, ...) and designing for performance are two independent aspects.
Many vendors claim that they have "SOA" products but in reality you can build SOA on any platform but no product can ensure you are building a proper SOA. Just select the product or vendor that suits best your business requirements and set up the right organizational structure to ensure you are building according to SOA principles.
Back to your scenario, if you've really large volumes (millions of records per hour), ETL products or custom software are the best. MDM is more geared for data consolidation than integration. If you've 10-100 thousands of records per hour, you can use integration products (from TIBCO, IBM, Oracle, Software AG, Progress or open source ones) with added benefits.
精彩评论