阿里是如何使用分布式架构的?阿里内部学习手册分享

简介: 为什么要使用分布式架构?分布式架构解决了互联网应用的两大难题:高并发和高可用。高并发指服务器并发处理客户端请求的数量大,而高可用指后端服务能始终处于可用状态。

为什么要使用分布式架构?分布式架构解决了互联网应用的两大难题:高并发和高可用。高并发指服务器并发处理客户端请求的数量大,而高可用指后端服务能始终处于可用状态。

提高系统容量

随着业务越来越复杂,服务也会变得越来越复杂,单台机器的CPU、内存已经无法满足部署一个庞大系统的性能要求。当然可以通过提高系统配置暂时解决问题,但是不管如何提高系统的配置,单台机器总会达到性能瓶颈的时候,所以需要多台机器才能应对这些扩张的功能。通过水平(加机器)和垂直(拆分为多个子系统)拆分系统,变成了一个分布式架构。

解决单点故障

在单台机器上部署服务,如果机器出现故障导致服务挂了,那么整个系统就会崩溃了。因此就要提高系统的可用性,系统的高可用性意味着一群服务器运行时与单台机器运行时没区别。这意味着要解决系统架构中的单点故障问题,通过引入分布式架构来增加冗余,从而提高系统的可用性,即使单台机器挂了也能保证服务正常运作。

基于上面两个原因,我们就需要分布式系统来解决系统容量不足和系统高可用问题。

虽然上边说了这么多,但是如何进行系统的学习分布式仍旧是一个不小的难题,基于这些原因,老师在这里为大家分享一份阿里巴巴的分布式学习手册!

整套内部学习手册分为了六个学习部分:协调与同步、资源管理与负载调度、计算机技术、通信技术、数据存储、高可靠!

协调与同步

  1. 分布式互斥
  2. 分布式选举
  3. 分布式共识
  4. 分布式事务
  5. 分布式锁
  6. 分布式技术是如何引爆人工智能的?


资源管理与负载调度

  1. 分布式体系结构:集中式结构
  2. 分布式体系结构:非集中式结构
  3. 分布式调度架构:单体调度
  4. 分布式调度架构:两层调度
  5. 分布式调度架构:共享状态调度
  6. 分布式事务与分布式锁的相关问题


计算技术

  1. 分布式计算模式:MR
  2. 分布式计算模式:Stream
  3. 分布式计算模式:Actor
  4. 分布式计算模式:流水线


通信技术

  1. 分布式通信:远程调用
  2. 分布式通信:发布订阅
  3. 分布式通信:消息队列
  4. 分布式体系架构与分布式计算相关问题


数据存储

  1. CAP理论
  2. 分布式数据存储系统:三要素
  3. 数据分布方式:哈希与一致性哈希
  4. 分布式数据复制技术
  5. 分布式数据:缓存技术


高可靠

  1. 分布式高可靠:负载均衡
  2. 分布式高可靠:流量控制
  3. 分布式高可用:故障隔离
  4. 分布式高可用:故障恢复
  5. 如何判断并解决网络分区的问题?

最后的最后需要领取这套手册笔记可以点击此处来获取就可以了!

相关文章
|
18天前
|
存储 JSON 数据库
Elasticsearch 分布式架构解析
【9月更文第2天】Elasticsearch 是一个分布式的搜索和分析引擎,以其高可扩展性和实时性著称。它基于 Lucene 开发,但提供了更高级别的抽象,使得开发者能够轻松地构建复杂的搜索应用。本文将深入探讨 Elasticsearch 的分布式存储和检索机制,解释其背后的原理及其优势。
68 5
|
2月前
|
存储 分布式数据库 数据库
Hbase学习二:Hbase数据特点和架构特点
Hbase学习二:Hbase数据特点和架构特点
47 0
|
3天前
|
设计模式 架构师 Java
Java开发工程师转架构师需要学习什么
Java开发工程师转型为架构师需掌握多项技能:精通Java及框架、数据库与分布式系统;熟悉设计模式与架构模式;积累项目经验;提升沟通与领导力;持续学习新技术;培养系统设计与抽象能力;了解中间件及开发工具;并注重个人特质与职业发展。具体路径应结合个人目标与实际情况制定。
34 18
|
1月前
|
存储 NoSQL Java
一天五道Java面试题----第十一天(分布式架构下,Session共享有什么方案--------->分布式事务解决方案)
这篇文章是关于Java面试中的分布式架构问题的笔记,包括分布式架构下的Session共享方案、RPC和RMI的理解、分布式ID生成方案、分布式锁解决方案以及分布式事务解决方案。
一天五道Java面试题----第十一天(分布式架构下,Session共享有什么方案--------->分布式事务解决方案)
|
1月前
|
机器学习/深度学习 分布式计算 Cloud Native
云原生架构下的高性能计算解决方案:利用分布式计算资源加速机器学习训练
【8月更文第19天】随着大数据和人工智能技术的发展,机器学习模型的训练数据量和复杂度都在迅速增长。传统的单机训练方式已经无法满足日益增长的计算需求。云原生架构为高性能计算提供了新的可能性,通过利用分布式计算资源,可以在短时间内完成大规模数据集的训练任务。本文将探讨如何在云原生环境下搭建高性能计算平台,并展示如何使用 PyTorch 和 TensorFlow 这样的流行框架进行分布式训练。
46 2
|
1月前
|
监控 Java 开发者
随着软件开发的发展,传统单体应用已难以适应现代业务需求,微服务架构因此兴起,成为构建可伸缩、分布式系统的主流
随着软件开发的发展,传统单体应用已难以适应现代业务需求,微服务架构因此兴起,成为构建可伸缩、分布式系统的主流。本文探讨Java微服务架构的设计原则与实践。核心思想是将应用拆分为独立服务单元,增强模块化与扩展性。Java开发者可利用Spring Boot等框架简化开发流程。设计时需遵循单一职责、自治性和面向接口编程的原则。以电商系统为例,将订单处理、商品管理和用户认证等拆分为独立服务,提高可维护性和容错能力。还需考虑服务间通信、数据一致性及监控等高级话题。掌握这些原则和工具,开发者能构建高效、可维护的微服务应用,更好地应对未来挑战。
66 1
|
1月前
|
Cloud Native 云计算 微服务
云原生时代:企业分布式应用架构的惊人蜕变,从SOA到微服务的大逃亡!
【8月更文挑战第8天】在云计算与容器技术推动下,企业分布式应用架构正经历从SOA到微服务再到云原生的深刻变革。SOA强调服务重用与组合,通过标准化接口实现服务解耦;微服务以细粒度划分服务,增强系统灵活性;云原生架构借助容器化与自动化技术简化部署与管理。每一步演进都为企业带来新的技术挑战与机遇。
82 6
|
18天前
x86体系架构学习
x86体系架构学习
|
19天前
|
Java 数据库连接 微服务
揭秘微服务架构下的数据魔方:Hibernate如何玩转分布式持久化,实现秒级响应的秘密武器?
【8月更文挑战第31天】微服务架构通过将系统拆分成独立服务,提升了可维护性和扩展性,但也带来了数据一致性和事务管理等挑战。Hibernate 作为强大的 ORM 工具,在微服务中发挥关键作用,通过二级缓存和分布式事务支持,简化了对象关系映射,并提供了有效的持久化策略。其二级缓存机制减少数据库访问,提升性能;支持 JTA 保证跨服务事务一致性;乐观锁机制解决并发数据冲突。合理配置 Hibernate 可助力构建高效稳定的分布式系统。
36 0
|
22天前
|
架构师 NoSQL 中间件
挑战架构师极限:分布式锁的四种实现方式,优劣对比让你一目了然!
【8月更文挑战第29天】在2024年软考架构师考试中,掌握分布式锁的实现方法极其重要。本文详细介绍了基于数据库、Redis及ZooKeeper三种常见分布式锁方案。数据库锁简单易懂但性能低;Redis锁性能优越且支持自动续期,但需引入中间件;ZooKeeper锁可靠性高,适用于分布式环境,但实现复杂。通过对比各方案优缺点,帮助考生更好地应对考试,选择最适合业务场景的分布式锁策略。
27 0

热门文章

最新文章