在众多计算机技术当中,分布式技术无疑是最璀璨的明珠之一。毫不夸张地说,没有分布式技术就没有互联网,也就没有现在的阿里巴巴、腾讯、亚马逊、Facebook、谷歌等科技巨头,更不会有以信息技术为核心的、对人类历史产生巨大变革的第三次工业革命。万维网、Email、DNS 等,都是分布式系统的典型代表。
“不积跬步,无以至千里;不积小流,无以成江海。”虽然整个分布式文档从构思到完成的时间不足一年, 但文档中的大部分知识点,却是我在多年的学习、工作中积累下来的。之所以能够实现快速写作,一方面是做了比较严格的时间管理,另一方面也得益于我多年坚持写博客的习惯。
分布式场景解决方案.mind图
本文档共分为10个版块。
第1版块:介绍分布式系统基础理论知识,总结一些在设计分布式系统时需要考虑的范式、知
识点以及可能会面临的问题,其中包括线程、通信、-致性、容错性、CAP理论、安全性合并
发等相关内容。
第2版块:详细介绍分布式系统的架构体系,包括传统的基于对象的体系结构、SOA,也包括
最近比较火的RESTful风格架构、微服务、容器技术、Serverless 架构等。
第3版块:介绍常用的分布式消息服务框架,包括Apache ActiveMQ、RabbitMQ、 RockeMQ、
Apache Kafka等。
第4版块:介绍分布式计算理论和应用框架方面的内容,包括MapReduce、Apache Hadoop.
Apache Spark、Apache Mesos等。
第5版块:介绍分布式存储理论和应用框架方面的内容,包括Bigtable Apache HBase. Apache
Cassandra、Memcached、 Redis、 MongoDB 等。
第6版块:介绍分布式监控方面常用的技术,包括Nagios、Zabbix、Consul、 ZooKeeper 等。
第7版块:介绍常用的分布式版本控制工具,包括Bazaar、Mercurial、 Git 等。
第8版块:介绍RESTful API、微服务及容器相关的技术,着重介绍Jersey、Spring Boot、Docker
等技术的应用。
第9版块和第10版块:分别介绍以淘宝网和Twitter为代表的国内外知名互联网企业的大型分布
式系统案例,分析其架构设计以及演变过程。
分布式事务综合案例分析
在计算机科学领域,分布式一致性问题是一个相当重要,且被广泛探索与论证的问题,通常存在于诸如分布式文件系统,级存系统和數据库等大型分布式存储系统中。什么是分布式一致性?分布式一致性分为哪些类型?分布式系统达到一致性后将会是一个什么样的状态?如果失去了一致性约束,分布式系统是否还可以依赖?如果一味地追求一致性,对系统的整体架构和性能又有多大影响?这一系列的问题,似乎都没有一个严格意义上准确的定义和答案。
第一版块:分布式架构
第二版块:一致性协议
第三版块:Paxos的工程实践
第四版块:ZooKeeper与Paxos
第五版块:使用ZooKeeper
第六版块:ZooKeeper的典型应用场景
第七版块:ZooKeeper技术内幕
第八版块:ZooKeeper运维
日常运维
本文档总计8章,首先简单介绍了分布式系统和分布式数据库的需求,然后讲解了分布式数据库的实现原理,并对市场上存在的各种分布式数据库中间件进行了对比,再围绕着如何利用Mycat实现分布式数据库而展开。对Mycat从入门到进阶、从高级技术实践到架构剖析、从网络通信协议解析到系统工作原理的方方面面进行了详细讲解,并剂析Mycat的SQL路由、跨库联合查询、分布式事务及原生MySQL. PostgreSQL 协议等核心技术。通过本书不可以了解Mycat的基本概念,掌握Mycat配置等技术,还能感受到Mycat的架构设计之美,了解Mycat。
Mycat多数据库支持原理与实现