【分布式系统与微服务篇的4个核心问题】
1、描述下分布式系统的特点与挑战?
2、谈谈微服务架构的优缺点?
3、如何实现服务之间的通信?
4、说说socket、ebservice、Rpc、ResTfu1apI、消息队列、JavaRmI、数据库通信、文件系统通信,它们各自的数据传输方式、应用场景、特点,分别是什么?
……
第八篇:分布式系统与微服务(4个)
1、描述下分布式系统的特点与挑战?
分布式系统,它是个由多个独立计算机节点,通过网络相互连接,并协同工作的系统。
这种系统具备一些显著的特点,同时也面临着一些挑战。
一、特点
分布式系统有4个特点:
即分布性、自治性、并行性,以及需要一个全局的进程通信机制且运行内核相同。
先…
分布式系统具有显著的分布性。
这个特性意味着,系统中的各个组件可以部署在,地理位置分散的不同地方,甚至跨越国界。
这种分散部署,带来了数据处理的分布性;
使得数据,可以在多个节点上进行处理,提高了整体的处理能力和效率。
其次…
分布式系统具有自治性。
系统中的每个节点都,具备独立处理数据的能力,它们之间地位平等,无主次之分。
每个节点既可以独立工作,又可以通过共享通信线路,进行信息传输和任务协调。
再者…
分布式系统还具备并行性。
这意味着一个大型任务,可以被分解为多个子任务;
并在不同的节点上,并行执行,从而大大地加快了任务的处理度。
最后…
分布式系统,还需要一个全局的进程通信机制;
以确保任何一个进程,都能与其他进程通信,无论是本地通信,还是远程通信。
同时,系统中所有机器上,运行的内核,必须相同,以便更容易地协调工作。
二、挑战
分布式系统,也面临着一些挑战…
如异构性、容错机制、数据一致性、扩展性等等。
1)异构性
即系统中的计算机和网络设备,可能具有不同的硬件配置、操作系统和网络协议…
这使得系统设计和实现,变得更加复杂。
2)对容错机制的需求
由于分布式系统中的节点,可能因各种原因(如硬件故障、网络故障等)而失效…
因此,系统需要具备强大的容错能力,以确保,在部分节点失效的情况下,整个系统仍能正常运行。
3)数据一致性
这也是分布式系统,面临的一大挑战。
由于数据分散在多个节点上,且节点之间的通信,可能存在延迟或不可靠性…
因此如何确保数据,在各个节点之间,保持一致性,便成了一个重要的问题。
4)扩展性
随着业务的展和用户规模的增加,分布式系统,还需要具备良好的扩展性…