随笔 - 250  文章 - 0  评论 - 288  阅读 - 117万 

随笔分类 -  分布式开发

分布式设计与开发(四)------数据拆分
摘要:一个大型系统里各个环节中最容易出性能和可用性问题的往往是数据库,因此分布式设计与开发的一个重要领域就是如何让数据层具有可扩展性,数据库的扩展分为Scale Up 和Scale Out,而Scale Up说白了是通过升级服务器配置来完成,因此不在分布式设计的考虑之内。Scale Out是通过增加机器的方式来提升处理能力,一般需要考虑以下两个问题:数据拆分数据库高可用架构数据拆分是最先会被想到的,原理很简单,当一个表的数据达到无法处理的时候,就需要把它拆成多个表,说起来简单,真正在项目里运用的时候有很多点是需要深入研究的,一般分为:切分策略与应用程序端的整合策略切分策略切分策略一般分为垂直切分、横 阅读全文
posted @ 2012-05-24 17:15 夜&枫 阅读(464) 评论(0) 推荐(1) 编辑
分布式设计与开发(三)------高一致性服务ZooKeeper
摘要:分布式环境中大多数服务是允许部分失败,也允许数据不一致,但有些最基础的服务是需要高可靠性,高一致性的,这些服务是其他分布式服务运转的基础,比如naming service、分布式lock等,这些分布式的基础服务有以下要求:高可用性高一致性高性能对于这种有些挑战CAP原则的服务该如何设计,是一个挑战,也是一个不错的研究课题,Apache的ZooKeeper也许给了我们一个不错的答案。ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,它暴露了一个简单的原语集,分布式应用程序可以基于它实现同步服务,配置维护和命名服务等。关于ZooKeeper更多信息可以参见官方文档ZooKeepe 阅读全文
posted @ 2012-05-24 17:14 夜&枫 阅读(459) 评论(0) 推荐(1) 编辑
分布式设计与开发(二)------几种必须了解的分布式算法
摘要:分布式设计与开发中有些疑难问题必须借助一些算法才能解决,比如分布式环境一致性问题,感觉以下分布式算法是必须了解的(随着学习深入有待添加):Paxos算法一致性Hash算法Paxos算法1)问题描述分布式中有这么一个疑难问题,客户端向一个分布式集群的服务端发出一系列更新数据的消息,由于分布式集群中的各个服务端节点是互为同步数据的,所以运行完客户端这系列消息指令后各服务端节点的数据应该是一致的,但由于网络或其他原因,各个服务端节点接收到消息的序列可能不一致,最后导致各节点的数据不一致。举一个实例来说明这个问题,下面是客户端与服务端的结构图: J3.jpeg (40.97 KB)2010-8-31. 阅读全文
posted @ 2012-05-24 17:13 夜&枫 阅读(441) 评论(0) 推荐(1) 编辑
分布式设计与开发(一)------宏观概述
摘要:在IDF05(Intel Developer Forum 2005)上,Intel首席执行官Craig Barrett就取消4GHz芯片计划一事,半开玩笑当众单膝下跪致歉,给广大软件开发者一个明显的信号,单纯依靠垂直提升硬件性能来提高系统性能的时代已结束,分布式开发的时代实际上早已悄悄地成为了时代的主流,吵得很热的云计算实际上只是包装在分布式之外的商业概念,很多开发者(包括我)都想加入研究云计算这个潮流,在google上通过“云计算”这个关键词来查询资料,查到的都是些概念性或商业性的宣传资料,其实真正需要深入的还是那个早以被人熟知的概念------分布式。分布式可繁也可以简,最简单的分布式就是 阅读全文
posted @ 2012-05-24 17:12 夜&枫 阅读(290) 评论(0) 推荐(2) 编辑

点击右上角即可分享
微信分享提示