Distributed Architecture (Chapter 10) ( (Client/Server (Disadvantages…
Responsibility separation such as user interface presentation and business logic processing
Reusability of server components
Lack of heterogeneous infrastructure to deal with the requirement changes
Server availability and reliability
Testability and scalability
Advantages of multi-tier
over two-tier architecture.
Middle layer is easy to change
Have portable and nonproprietary design and implementation
Middle layer can provide multi-threading support
Reduces traffic on the network
Difficulty in testing due to lack of testing tools
Adding multiple servers in the system makes the server reliability and availability even more critical
Server component implementation and location transparency,
Changeability and extensibility,
Feasibility of run time changes of server components (add or remove server components)
Inefficiency due to the overhead of proxies
Low fault tolerance
Loosely-coupled connection: Loose-coupling is the key attribute of SOA.
Each service component is independent from other services due to the stateless service feature.
The implementation of a service will not affect the application of the service as long as the exposed interface is not changed.
It makes SOA software much easier to evolve and update.
Interoperability: Technically any client or any service can access other services regardless of their platform, technology, vendors, or language implementations.
Reusability: Any service can be reused by any other service,. Because clients of a service only need to know its public interfaces, service composition and integration become much easier.
SOA based business application development comes much more efficient in term of time and cost.