본 포스트는 개인 스터디 용으로 작성된 Ian Sommerville의 Software Engineering, 8/E의 요약본입니다.
1. Distributed system characteristics
- Resource sharing
- Openness : use of equipment and S/W  from different vendors
- Concurrency : for enhancing performance
- Scalability
- Fault tolerance
- Distributed system disadvantages
    1) complexity
    2) Security
    3) Manageability
    4) Unpredictability : sensitive to oranization and network load
- Distributed system architecture types
    1) Multiprocessor architectures
    2) Client-server architectures
    3) Distributed object architectures
    4) Inter-organisational computing

2. Middleware
- S/W that maanges and supports the different components of a distributed system.
- e.g. Transaction processing monitors, Communication controllers.

3. Multiprocessor architectures
- System composed of multiple processes which may (but need not) execute on different processors
- Architectural model of many large real-time systems

4. Client-server architectures
- Servers provide services and a set of clients consume these.
- include thin & fat client architecture, n-tier architectures(may include layered application architectures)

5. Thin and fat clients
- Thin client : carry out just interactions with the system user. Heavy processing load on both the server & the network
- Fat client : carry out thin's role & the application logic

6. Three-tier architectures
- Each architecture layers may execute on a separate processor.
- Better performance than thin-client approach, simpler management than fat-client approach

7. Distributed object architectures
- No distinction between clients and servers.
- Each distributable entity is an object that provides and consumes services.
- Object communication through a middleware system(ORB : object request broker)
- CORBA component standard or other similar component models are used(e.g. COM)
- advantages : more openness, sacalability, flexibility, reconfigurability
Posted by 어쨌건간에