什么是分布式架构
分布式系统(distributed system) 是建立在网络之上的软件系统,一种系统体系结构。其特点是不存在任何集中控制,数据及其处理分散在不同的结点上执行,同时它们在逻辑上又是一个整体。分布式系统是建立在网络上的软件系统, 处理协助任务,然后整合结果。在分布式系统中,一组独立的计算机向用户呈现一个统一的整体,就像一个系统一样。系统具有多种通用的物理和逻辑资源,可以动态分配任务,分散的物理和逻辑资源可以通过计算机网络实现信息交换。系统中有一个分布式操作系统,以全局方式管理计算机资源。。
内聚性:是指每一个数据库分布节点高度自治,有本地的数据库管理系统。
透明性:是指每一个数据库分布节点对用户的应用来说都是透明的,看不出是本地还是远程。
在分布式数据系统中,用户感觉不数据是分布的,即用户不须知道关系是否分割,有无副本,数据存在于那个站点以及事物在哪个站点上执行。
简单来说:在一个分布式系统中,一组独立的计算机展现给用户的是一个统一的整体,就好像是一个系统似的。假设原来我们有一个系统,有100万行代码。现在拆分成20个小系统,每个小系统仅剩5万行代码。原本代码之间都是直接基于Spring框架走JVM内存调用,现在拆分后,将20个小系统部署在不同的机器上,然后基于分布式服务框架(比如dubbo)搞一个rpc调用,接口与接口之间通过网络通信进行请求和响应。