Distributed System
基本概念
Synchronous vs Asynchronous
Blocking vs Nonblocking
If the thread will not give out a signal when it's finished, synchronous
If the thread will give out a signal when it's finished, asynchronous
If the process wait the thread to be finished, blocking
If the process doesn't wait the thread to be finished, nonblocking.
Reference: https://www.zhihu.com/question/19732473/answer/23434554
Scalability 扩展性
两种架构模式
Scale out (Horizontally Scale),即通过添加更多的机器,来满足更大的需求
Scale up (Vertically Scale),即通过对单一机器增添CPU、RAM等,来满足更大的需求
通常情况下,先采取 Scale up 的方式,扩展单个服务器的性能,来满足业务的需求。但一旦遇到服务器性能的上限,那么就需要 Scale out 的方式来进一步满足需求。
一致性算法
如何解决分布式系统的沟通问题。
Paxos
Raft
https://segmentfault.com/a/1190000014503967
负载均衡解决办法
如何解决分布式系统负载均衡问题。
Consistent Hashing
故障分析
server down
Last updated