Ehsan Ghanbari

Experience, DotNet, Solutions

Should each service has its own data in SOA?

Recently I'm tackling with a problem which has some dependencies with SOA architecture. It's where a question about SOA architecture comes out: "Does each service has its own data in SOAs?" After searching on the web I found different answers to this question.  It seems that it depends on conditions!

Suppose if something happens in a point everything in the whole system, the process should be back to the earlier point because each task is independent of the others, right? In this case, if every service has its own data, it will be easier to deal with the scenario. There is a solution for that: as in SOA architecture, every service can be hosted on a different machine, so we can dedicate one of the services to data management (Datacenter). 

In other way, Services can cache data of other Services. And any changes in the source of the data should be published so the subscribing Services can update their cache. Although this is the cost-effective solution, it is a good one! It also increases the availability of a Service by preventing it from being dependent on the data of other Services. and if the other Service is not available, it can still do its job by its cache data.

About Me

Ehsan Ghanbari

Hi! my name is Ehsan. I'm a developer, passionate technologist, and fan of clean code. I'm interested in enterprise and large-scale applications architecture and design patterns and I'm spending a lot of my time on architecture subject. Since 2008, I've been as a developer for companies and organizations and I've been focusing on Microsoft ecosystem all the time. During the&nb Read More

Post Tags
Pending Blog Posts
Strategic design
Factory Pattern
time out pattern in ajax
Selectors in Jquery
Peridic pattern
How to use PagedList In asp.net MVC
Redis as a cache server
Domain driven design VS model driven architecture
How to query over Icollection<> of a type with linq
What's the DDD-lite?
comments powered by Disqus