[1] Isolation : Changing the internals of one service does not force changes, rebuilding or restarting of other services.
[2] Behavior is separated from constraints : Relocating, outsourcing or restricting a service requires changes only in the policy but not to the service itself.
[3] Location independent : Whether a service is on the same machine or different, it can be accessed in the similar manner.
[4] Scale invariant : Services scale in all the directions. Let's take an example a service can be scaled out by fronting it with a router service that distributes traffic among a farm of services.
[5] Transport/protocol/format neutral : The communication details between parties are flexible but not fixed.
[6] Time independent : Services can make use of queue-based communication, when they do not have to be online at the same time to interact.
[7] Platform and implementation independent : A service need not know anything about another service's execution environment to interact with it.
[8] Address agnostic : Services can employ a discovery mechanism to locate each other without any prior notion about where they reside.
No comments:
Post a Comment