分布式与集群


 分布式的每一个节点可以做成集群,每个集群并不一定是分布式。

一.分布式

  不同子系统实现不同的的服务,做为一个整体对外提供服务。(另一种说法:平常讲一个技术支持分布式是指可以布署在不同机器,提供一个服务,应该是相当于集群这个概念)

 

二.集群

  不同计算机实现相同的服务,做为一个整体对外提供服务。(1.它是为解决高访问量问题,对某个客户端请求来讲,事实上只有一台计算机为它提供服务;2.高计算性的集群,跟分布式的定义是一致,也是一个分布式)

 

 1.分类:

a.高可用性集群:利用集群管理软件,当主服务器故障时,备份服务器能够自动接管主服务器的工作,并及时切换过去,以实现对用户的不间断服务。

b.负载均衡集群:即把负载压力根据某种算法合理分配到集群中的每一台计算机上,以减轻主服务器的压力,降低对主服务器的硬件和软件要求。

c.高计算性集群:即充分利用集群中的每一台计算机的资源,实现复杂运算的并行处理,通常用于科学计算领域,比如基因分析,化学分析等。

 

  2.负载均衡集群相关技术

a.硬件设备方案:F5,Netscalar;

b.软件负载方案:LVS。该项目针对高可伸缩、高可用网络服务的需求,给出了基于IP层和基于内容请求分发的负载平衡调度解决方法,它通过前端一个负载调度器(Load Balancer)无缝地将网络请求调度到真实服务器上,从而使得服务器集群的结构对客户是透明的,客户访问集群系统提供的网络服务就像访问一台高性能、高可用的服务器一样。

c.去中心化实现法:cassandra

d.缓存状态的水平伸缩:广播同步(JGroups),分布式内存缓存(memcached,terracotta),基于cookie方式和数据库存储方式

e.文件的水平伸缩:直链式存储(DAS),网络存储(NAS,SAN),分布式文件系统(GFS)

f.应用的水平伸缩

g.数据库的水平伸缩:分库,分表,读写分离,nosql(mongdb,

cassandra

 

等)。

 

3.linux虚拟机LVS的学习:

 http://yesbi.iteye.com/blog/1247217

 例子具体完善中。。。增加高可用(心跳测试),增加分布式缓存,增加文件的分布式。

 

4.memcached,terracotta学习中。

 

 

 

三.系统间的通信

    tcp/ip,http,socket区别:tcp/ip是传输层协议;http是运用层协议,http协议是基于tcp/ip协议;socket本身并不是一个协议,它是对tcp/ip协议的封装,是tcp/ip协议的抽象,通过socket才能使用tcp/ip协议,是tcp/ip协议的编程接口参考http://hi.baidu.com/qiaoyuetian/blog/item/1f32d5df42eeb6056327985c.html

   系统间通信包括数据的传输(tcp/ip,udp/ip协议)、数据的处理(例如读取和写入数据属于网络IO的操作包括BIO,NIO,AIO等方式)。

   网络通信的式有tcp/ip+bio,tcp/ip+nio,udp/ip+bio,udp/ip+nio这四种不同方式,对应于java都有对应的Socket类库来支持这不同方式,如Socket,ServerSocket,SocketChannel,ServerSocketChannel,DatagramSocket等相关来支持。

   rmi,webservice,jms最终都是通过网络通信方式来实现的,如rmi是基于tcp/ip+bio,webservice是基于http,jms是基于http,tcp/ip方式

 

    系统间通讯的技术有socket,mina,netty,rmi,jms,webservice等技术。

 

1.socket 通信

 

 服务器Socket是监听机器的某个端口的服务,只跟这台机器在此端口监听到的信息有关,跟具体的客户端Socket是来自什么机器什么操作系统什么语言编写的无关(客户端Socket也是类似),再由机器根据网络传输的规范完成网络的通信。

 

2.rmi学习中。。。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值