Please enable JavaScript.
Coggle requires JavaScript to display documents.
Strategic System Design - Coggle Diagram
Strategic System Design
a need to support millions of users
scalability
horizontal scaling
supports more users
load distributed between nodes
each node has different process
nodes can concurrently process a task
consistency problem
available
if one node down, other backs up
the node down and the one backs up may have different data
#
vertical scaling
amdahl's law
atomicity issue between processors
locks needed on atomic operations
locks caused waiting = slower
bottlenecks
easy to implement
does not have availability benefits
they are consistent & linearizable
they are atomic
a need to stay available all times
availability
a need to store data for a long time
durability
a need to be exact and avoiding bugs at possible
reliability & consistency
example
kafka
asynchronous communicaiton
distributed system
distribute the load
faster
faster
less operaitons
zero-copy
1 more item...
sequential /io
1 more item...
available
user experience