Distributed Systems Architecture
Distributed Systems Architecture
Advantages
Resource Sharing Openness Concurrency Scalability Fault Tolerance Complexity Security Manageability Unpredictability
Disadvantages
Client-Server architecture
Thin-Client model: Applications and heavy work resides on server(s). Client(s) serve as interface for the server(s) Fat-Client model: Most of the programming logic resides on the client(s) side. Server(s) handles data. Applet model: intermediate model
Presentation: Web browser (+ web server) Processing: Server side applications Data management: RDBMS
Objects that provide interfaces to a set of services that they provide. Objects can communicate with other objects to generate requests / provide services Object broker => middleware
Advantages:
No need to decide on locations for services, each object can work on any place Very open system architectures Flexible and scalable System can be reconfigured dynamically Systems are very difficult to design
Disadvantages:
P2P architecture
De-centralized systems Computations can be carried on by any node Service oriented system architectures
Suggested readings
12.3.1 CORBA