什么是分布式系统?

2024年11月20日 17:32
有5个网友回答
网友(1):

分布式系统是建立在网络上的软件系统。 处理协助任务,然后整合结果。在分布式系统中,一组独立的计算机向用户呈现一个统一的整体,就像一个系统一样。系统具有多种通用的物理和逻辑资源,可以动态分配任务,分散的物理和逻辑资源可以通过计算机网络实现信息交换。系统中有一个分布式操作系统,以全局方式管理计算机资源。通常,对于用户来说,分布式系统只有一个模型或范例。在操作系统之上,一个软件中间件层负责实现这个模型。分布式系统的一个著名例子是万维网,在万维网中,一切看起来都像一个文档(网页)。在计算机网络中,这种统一性、模型和软件是不存在的。用户看到的是实际的机器,计算机网络并没有让这些机器看起来千篇一律。如果这些机器有不同的硬件或不同的操作系统,那么这些差异对用户来说是完全可见的。如果用户想要在远程机器上运行程序,他必须登录到远程机器上并在该机器上运行程序。分布式系统和计算机网络系统的共同点是大部分分布式系统都是建立在计算机网络上的,所以分布式系统和计算机网络的物理结构基本相同。两者的区别在于分布式操作系统和网络操作系统的设计思想不同,这就决定了它们在结构、工作方式和功能上也是不同的。网络操作系统要求网络用户在使用网络资源时首先了解网络资源。网络用户必须了解网络中每台计算机的功能和配置、软件资源和网络文件结构。如果用户想要读取网络中的共享文件,他们必须知道该文件放在哪个计算机和目录中。分布式操作系统以全局方式管理系统资源,可以随意为用户调度网络资源,调度过程“透明”。当用户提交作业时,分布式操作系统可以根据需要选择系统中最合适的处理器,将用户的作业提交给处理程序,在处理程序完成作业后将结果传递给用户。在这个过程中,用户并没有意识到多个处理器的存在,系统就像一个处理器。

网友(2):

分布式系统是若干独立计算机的集合,这计算机对用户来说就像单个相关系统。也就是说分布式系统背后是由一系列的计算机组成的,但用户感知不到背后的逻辑,就像访问单个计算机一样。

在分布式系统中:1、应用可以按业务类型拆分成多个应用,再按结构分成接口层、服务层;我们也可以按访问入口分,如移动端、PC端等定义不同的接口应用;

2、数据库可以按业务类型拆分成多个实例,还可以对单表进行分库分表;

3、增加分布式缓存、搜索、文件、消息队列、非关系型数据库等中间件;

很明显,分布式系统可以解决集中式不便扩展的弊端,我们可以很方便的在任何一个环节扩展应用,就算一个应用出现问题也不会影响到别的应用。

随着微服务Spring Cloud & Docker的大热,及国内开源分布式Dubbo框架的重生,分布式技术发展非常迅速。

分布式系统虽好,也带来了系统的复杂性,如分布式事务、分布式锁、分布式session、数据一致性等都是现在分布式系统中需要解决的难题,虽然已经有很多成熟的方案,但都不完美。

分布式系统也增加了开发测试运维成本,工作量增加,分布式系统管理不好反而会变成一种负担。

网友(3):

分布式系统是由多个独立计算机组成的系统,它们通过网络通信来协同工作。在分布式系统中,每个计算机节点可以相互通信和协作,共同完成某项任务。分布式系统的特点是节点之间没有主从关系,而是平等的。每个节点都可以扮演客户端和服务器的角色,同时处理自己的任务和协同完成其他节点的任务。

网友(4):

分布式系统,是音视频领域的一种显示控制系统,通过它可以实现系统内任意音视频信号的自由切换,大屏显示以及坐席控制等功能。分布式系统由若干个独立的功能节点组成,并且依靠网络连接。系统中所有节点都是对等的,并且可以在空间上随意分布,可以是不同的机房,甚至是不同的城市,通过远距离的数据交互来实现整体系统的功能。很高兴能为你提供帮助

网友(5):

分布式系统(distributed system)是建立在网络之上的软件系统。正是因为软件的特性,所以分布式系统具有高度的内聚性和透明性。因此,网络和分布式系统之间的区别更多的在于高层软件(特别是操作系统),而不是硬件