深入Go 语言,Go 语言架构定义解析 | 青训营笔记

68 阅读2分钟

这是我参与「第五届青训营」伴学笔记创作活动的第 9 天

前言

本文章记录了分布式理论基础的学习的部分内容,记录了今天所学习的部分知识

1.什么是分布式

分布式系统是计算机程序的集合,这些程序利用跨多个独立计算节 李点的计算资源来实现共同的目标。可以分为分布式计算、分布式存 储、分布式数据库等。

优势︰ 1.去中心化2.低成本3.弹性4.资源共享5.可靠性高

挑战: 1.普遍的节点故障 2.不可靠的网络 3.异构的机器与硬件环境 4.安全

2.WHY-HOW-WHAT

2.1. 使用者视角:

Why :

  • .数据爆炸,对存储和计算有大规模运用的述求2.成本低,构建在廉价服务器之上

How :

  • 分布式框架
  • 成熟的分布式系统 What :
  • 理清规模,负载,一致性要求等
  • 明确稳定性要求,制定技术方案

2.2. 学习者视角

Why :

  • 后端开发必备技能
  • 帮助理解后台服务器之间协作的机理

How :

  • 掌握分布式理论
  • 了解一致性协议

What :

  • 把要点深入展开,针对难点搜索互联网资料
  • 将所学知识运用于实践

3.常见的分布式系统

3.1分布式存储

  1. Google File System ( GFS ) : google分布式文件系统
  2. Ceph:统一的分布式存储系统
  3. Hadoop HDFS:基于GFS架构的开源分布式文件系统4.Zookeeper :高可用的分布式数据管理与系统协调框架

3.2分布式数据库

  1. Google Spanner : google可扩展的、全球分布式的数据库2.TiDB:开源分布式关系型数据库
  2. HBase :开源Nosql数据库4.MongoDB:文档数据库

3.3分布式计算

  1. Hadoop:基于MapReduce分布式计算框架
  2. Spark :在Hadoop基础之上,使用内存来存储数据3.YARN:分布式资源调度
  3. YARN:分布式资源调度

引用参考

参考的部分内容来源于以下课程:

  • 分布式理论 - 现代架构基石