开发java一直说分布式,但是对分布式和集群的初衷还是不是理解,下面是摘自网络上的解释,.....大家看一下...
============
简单说,分布式是以缩短单个任务的执行时间来提升效率的,而集群则是通过提高单位时间内执行的任务数来提升效率。
如果一个任务由10个子任务组成,每个子任务单独执行需1小时,则在一台服务器上执行改任务需10小时。
采用分布式方案,提供10台服务器,每台服务器只负责处理一个子任务,不考虑子任务间的依赖关系,执行完这个任务只需一个小时。(这种工作模式的一个典型代表就是Hadoop的Map/Reduce分布式计算模型)而采用集群方案,同样提供10台服务器,每台服务器都能独立处理这个任务。假设有10个任务同时到达,10个服务器将同时工作,10小后,10个任务同时完成,这样,整身来看,还是1小时内完成一个任务!
============
RAC:就是程序的容错(多个实例存在多个机器上,但是共享存储)-----实例的冗余
DG:就是同步的复制(针对日志)------------------------------------数据的冗余
GG:也是同步的复制(针对日志)------------------------------------数据的冗余
实例冗余:就是防止程序出错而导致服务访问出错
数据冗余:对数据进行备份保证冗余---就是拷贝
读写分离都是基于上面的这些机制
============