摘要: 从客户端有数据产生到数据被保存到持久存储系统上需要经历的步骤:1. 数据在客户端的内存里2. 客户端把数据发送到服务端内存里;3. 服务端调用write写文件,写成功;4. 文件系统把内容flush到磁盘控制器;5. 磁盘控制器把内容保存到物理磁盘上;上述的5个步骤中,1、2的时候无论客户端还是服务端死掉数据都是不会损坏的。如果在步骤3之后应用死掉而机器还在的话,不会有太大的问题;如果这个时候机器死掉的话会丢失这个数据。其中,磁盘控制器把数据刷到物理介质上的时间点是不确定的,如果不是磁盘有备用电源就不要开写缓存(可以用hdparm等命令看到并管理,但是没有试成功),仅开读缓存即可。文件系统把数 阅读全文
posted @ 2012-04-09 12:42 传灯 阅读(175) 评论(0) 推荐(1) 编辑
摘要: 亚马逊 dynamo的解决的问题:可用性、一致性、成本效益和性能。主要完成对业务状态的管理。途径是去中心化,即去掉一个中心节点导致的单点故障或者影响服务质量的情况。主要确保数据永远可写、高可用性两点。dynamo的特性:数据划分一致性哈希对象版本去中心化技术分布式故障监测(gossip)对于ACID,dynamo只提供高A,弱C,不提供I的特性。SLA(服务水平协议):在并发达到500次/秒的时候,99.9以上的请求在300ms之内。设计原则:永远可写:为了确保系统的可用性,在数据不一致的时候牺牲一定的一致性,保证数据永远可写。采用对象版本的方式来达到最终一致性;协调冲突:最后一次写入获胜;增 阅读全文
posted @ 2012-04-09 12:40 传灯 阅读(371) 评论(0) 推荐(0) 编辑