Tutorial 2 Flashcards
Scalability can be measured along three different dimensions, name them.
- Size scalability
- Geographic scalability
- Administrative scalability
Goals of size scalability
It is possible to add users and ressources without noticeable performance loss
Challenges of size scalability
There are bottlenecks limiting the use of centalized servers
1. Processing speed
-> limited by number / speed of CPUs
2. Storage capacity
Single server may not be able to store all data
3.I/O transfer rate
Goal of geographic scalability
Even if users/resources are far appart, make communication delays hardly noticeable
Challenges of geographic scalability
- Synchronous communication leads to slow service performance
- Wide-area network communication is unreliable and suffers bandwidth limitations
- Wide-area systems are limited for multipoint communication
Goal of administrative scalability
System stays manageable even if there are many independent organizations involved
Challenges of administrative scalability
- Missing trust between different organizations (especially in different countries)
- Conflicting policies regarding payment and management
- Security issues
Techniques to solve scalability problems in distrbuted systems
- Improving capacities of servers and network (inc. memory and upgrade CPU’s)
- Hide communication latencies
- Partitioning and distribution
- Replication
Name 4 architectural styles for distributed systems
- Layered
- Object based and service oriented
- Resource based
- Publish - subscribe
Why are there different architectural styles for distributed systems?
Not every architecture suitable for every use case
Briefly explain Layered Architecture
- High abstraction
- Components are assigned different function layers with clear data flow Not easy to deploy!
- Coupled and monolithic implementations
Briefly explain Object- or service based architecture
- Easier to integrate services from different administrative organizations
- However, connecting components of service is challenging
Briefly explain Resouce based architecture
- System as a huge collection of resources managed by components
- Use generic operations (simplicity) .RESTful architectures
- Prone to errors during runtime
- Complicate communication schemes
Briefly explain publish-subsribe architecture
Strong decoupling of processes, but event-composition is not a trivial task