1. 把进程比作是人,每个人有自己的记忆(memory),人与人通过谈话(消息传递)来交流,谈话既可以是面谈(同一台机器),也可以在电话里谈(不同的服务器,有网络通信)。而面谈和电话谈的区别在于,面谈可以立即知道对方是否死了(crash,SIGCHILD),而电话谈只能通过周期性的心跳来判断对方是否活着。
2.设计分布式系统时可以采取”角色扮演“,团队里的几个人各自扮演一个进程,人的角色由进程代码决定(管登陆的,管消息分发的,管买卖的等等),每个人有自己的记忆,但不知道别人的记忆,不知道别人的想法,只能通过交谈。然后需要思考:容错(万一有人突然死了);扩容(新人中途进来);负载均衡(把甲的活给乙做);退休(甲要修复bug,先别派任务)
时间: 2024-10-11 03:34:45