开源分布式系统架构
2014-06-04 17:27
106 查看
分布式系统是一个非常广泛的概念,它最终要落实到解决实际问题上,不同的问题有不同的方法和架构。所有的开源软件都是以某个应用场景出现,而纯粹以“分布式”概念进行划分的比较少见。
但如果以算法划分,到能分出几类:
1.以Leader选举为主的一类算法,比如paxos、viewstamp,就是现在zookeeper、Chuby等工具的主体
2.以分布式事务为主的一类主要是二段提交,这些分布式数据库管理器及数据库都支持
3.以若一致性为主的,主要代表是Cassandra的W、R、N可调节的一致性
4.以租赁机制为主的,主要是一些分布式锁的概念,目前还没有看到纯粹“分布式”锁的实现
5.以失败探测为主的,主要是Gossip和phi失败探测算法,当然也包括简单的心跳
6.以弱一致性、因果一致性、顺序一致性为主的,开源尚不多,但大都应用在Linkedin、Twitter、Facebook等公司内部
7当然以异步解耦为主的,还有各类Queue
但如果以算法划分,到能分出几类:
1.以Leader选举为主的一类算法,比如paxos、viewstamp,就是现在zookeeper、Chuby等工具的主体
2.以分布式事务为主的一类主要是二段提交,这些分布式数据库管理器及数据库都支持
3.以若一致性为主的,主要代表是Cassandra的W、R、N可调节的一致性
4.以租赁机制为主的,主要是一些分布式锁的概念,目前还没有看到纯粹“分布式”锁的实现
5.以失败探测为主的,主要是Gossip和phi失败探测算法,当然也包括简单的心跳
6.以弱一致性、因果一致性、顺序一致性为主的,开源尚不多,但大都应用在Linkedin、Twitter、Facebook等公司内部
7当然以异步解耦为主的,还有各类Queue
相关文章推荐
- 关于分布式系统架构模块通讯方式选择的问题
- ARM太贵,80多家科技巨头悄然站队开源芯片架构RISC-V
- CTO俱乐部系列之五:网站架构和开源技术结合活动
- 介绍一个DDD开源架构
- 分布式系统架构及算法
- 解密淘宝网的开源架构
- Quartz.NET开源作业调度架构
- Druid:一个用于大数据实时处理的开源分布式系统
- Linux 开源项目的工程整体编译架构的修改(autotools)
- jeecg开源社区第12期架构学习班开始报名了
- telegraf+influxdb+grafana开源监控架构
- 【开源】.net 分布式架构之分布式缓存中间件
- 开源CRM项目基础架构平台初稿出来了
- 开源大数据引擎:Greenplum 数据库架构分析
- 开源架构
- 解密淘宝网的开源架构
- Android 开源项目(架构)
- Slickflow.NET 开源工作流引擎基础介绍(六)--模块化架构设计和实践
- postgresql相关开源软件及架构简介
- 开源软件架构:Nginx