神龙架构没那么难理解—图解世界领先的阿里云神龙架构(二)神龙出世

本文涉及的产品
云服务器 ECS,每月免费额度200元 3个月
云服务器ECS,u1 2核4GB 1个月
简介: 本文为神龙架构没那么难理解—图解世界领先的阿里云神龙架构的第二篇,介绍的是神龙1.0版本即刚问世时的特点和解决的问题

作者:朱祺 阿里云全球最有价值专家

3 神龙出世

3.1 继续说我们的搬砖问题

image.png
第2章中指出只要采用虚拟化和弹性计算,就代表100个劳动力必须选择1个管理人员,实际上只能有99个劳动力进行搬砖。而神龙想做到的目标就是既然100个工人搬砖,就要全部搬砖,但同时也需要有手段来管理和控制我家和邻居家不同时间搬砖的工人数。以上图为例就是让黄色的那个被抽出来负责管理工作的工人回去仍然搬砖去。
包工头看着目前的情况想,如果要维持两家搬砖的工人弹性灵活,就需要100个工人抽1个工人做管理工作,那如果1000个工人就需要损失10个,10000个工人就需要损失100个。工程量越大则损失的劳动力就越多,当业务得到大规划发展时这个损耗的问题如果能够解决就可以大幅度的提升搬砖的效率。阿里云在神龙架构问世前的虚拟化损耗其实比搬砖的例子更大,平均虚拟化损耗为10%左右,代表100个工人,只有90个在搬砖,剩下的10个在做搬砖管理工作。

3.2 神龙1.0的核心理念

结合实际情况包工头决定让原来被抽出来做管理工作的工人甲仍然回去搬他的砖去,因为他的力气大的特点意味着他本来就适合搬砖而不适合管理工作。而工人队伍的管理工作采用项目经理制,即引入专业管理人员来负责工人队伍的管理,使工人只负责搬砖,当然引入专业管理人员后,成本肯定是上升的,但是搬砖的劳动力就没有损耗了。采用项目经理制后的情况如下图所示:
image.png
需要重点指出的是,搬砖队伍弹性伸缩的最小单位是1个队伍,如果搬砖1队忙不过来,只能要求整个搬砖2队或者搬砖3队整个队伍过来帮忙,而不能说从搬砖2队仅抽取几个工人过来帮忙。通过这种结构确保了每队搬砖队伍的劳动力因为有专门的项目经理进行管理而不会有损耗。这里先不引伸到神龙架构,因为还有一个重要的问题没有提到。

3.3 异构计算的本质是搬砖和砌墙的结合

包工头从自身业务的发展进行分析,发现我和我的邻居除了搬砖外还有砌墙的需求,而原先的工人全部都是擅长于搬砖而没有擅长砌墙的泥瓦工,让搬砖的工人去砌墙固然也是可以的,但是速度和质量显然不及专门砌墙的泥瓦工。因此包工头的做法是,在原来的队伍中加上泥瓦工,这样1支队伍就即可以搬砖又可以砌墙了,如下图所示:
image.png
搬砖工人和泥瓦工结合的方式就叫异构,搬砖工人在搬砖的时候泥瓦工在砌墙,就叫异构计算。

3.4 神龙1.0的特点总结

到这里为止虽然没提过神龙,其实已经把神龙1.0的特点全部说明白了,这里把搬砖砌墙队伍的问题和神龙1.0的特点结合起来来作为神龙1.0的特点总结。
搬砖砌墙队伍为了解决劳动力损耗的问题搬砖的全部搬砖,砌墙的全部砌墙,管理工作由专门的项目经理负责。反映到神龙1.0中即阿里云为了解决虚拟化损耗的问题新造出一个带有智能芯片的专用板卡负责虚拟化调度,这块专用板卡称为MOC卡,外观如下图所示:
image.png
为了解决搬砖砌墙任务而专门成立的带项目经理的搬砖砌墙队即是阿里云的神龙云服务器如下图所示:
image.png
业内一般管它叫弹性裸金属服务器。根据阿里云官方文档:弹性裸金属服务器(ECS Bare Metal Instance)是一种可弹性伸缩的高性能计算服务,计算性能与传统物理机无差别,具有安全物理隔离的特点,分钟级的交付周期将提供给您实时的业务响应能力,助力您的核心业务飞速成长。现在能够理解了为什么计算性能与传统物理机无差别,因为神龙云服务器就是物理机,所以当然计算性能和物理机没有差别,此外它又可以像云服务器一样弹性伸缩,并且交付周期为分钟级。
一句话总结神龙1.0的特点就是,神龙云服务器兼具了物理机和云服务器优点,本质上是可以弹性伸缩的物理机并且这种物理机专门为提供云服务设计。

3.5 神龙1.0的瓶颈

回到搬砖的例子,包工头又碰到了新问题,邻居他自己就是一个项目经理,对于搬砖和砌墙有特殊的要求,他要求一个搬砖砌墙队内的100个工人上午搬左边的砖,同时砌右边的墙;下午搬右边的砖,同时砌左边的墙。而目前搬砖砌墙队的项目经理没经历过这种情况,不知道该怎么调配队伍内的工人。
这就是神龙1.0的瓶颈,虚拟化其实分成两个方向:一个方向是虚拟化组合,把一堆物理机粘成一个大的虚拟机;另一个方向是虚拟化切分,把一个物理机切成一堆小的虚拟机。神龙1.0做到了虚拟化组合,但并没有做到虚拟化切分,在例子中即为搬砖砌墙队的项目经理只知道在自己的队伍不够用时叫别的队伍来帮忙,但是自己的队伍内怎么去响应我邻居家的要求,上下午通过队内工人调配做到劳动力弹性却没有办法实现。
这个问题在神龙2.0中得到了解决。

相关实践学习
一小时快速掌握 SQL 语法
本实验带您学习SQL的基础语法,快速入门SQL。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
5天前
|
人工智能 分布式计算 Cloud Native
阿里云PAI平台架构介绍
阿里云PAI平台架构介绍
9 0
|
19天前
|
人工智能 Serverless 数据处理
利用阿里云函数计算实现 Serverless 架构的应用
阿里云函数计算是事件驱动的Serverless服务,免服务器管理,自动扩展资源。它降低了基础设施成本,提高了开发效率,支持Web应用、数据处理、AI和定时任务等多种场景。通过实例展示了如何用Python实现图片压缩应用,通过OSS触发函数自动执行。阿里云函数计算在云计算时代助力企业实现快速迭代和高效运营。
52 0
|
2月前
|
存储 机器学习/深度学习 并行计算
阿里云服务器X86计算、Arm计算、GPU/FPGA/ASIC、高性能计算架构区别
在我们选购阿里云服务器的时候,云服务器架构有X86计算、ARM计算、GPU/FPGA/ASIC、弹性裸金属服务器、高性能计算可选,有的用户并不清楚他们之间有何区别,本文主要简单介绍下不同类型的云服务器有何不同,主要特点及适用场景有哪些。
阿里云服务器X86计算、Arm计算、GPU/FPGA/ASIC、高性能计算架构区别
|
2月前
|
安全 数据处理 云计算
阿里云神龙架构的背景
阿里云神龙架构的背景
|
3月前
|
网络协议 Java 容器
学习阿里云架构设计知识
学习阿里云架构设计知识
205 0
|
3月前
|
存储 数据可视化 数据管理
基于阿里云服务的数据平台架构实践
本文主要介绍基于阿里云大数据组件服务,对企业进行大数据平台建设的架构实践。
734 2
|
15小时前
|
监控 负载均衡 持续交付
构建高效微服务架构:后端开发的新趋势
【5月更文挑战第5天】在数字化转型的浪潮中,微服务架构以其灵活性、可扩展性和容错性成为企业追求的技术典范。本文深入探讨了微服务的核心组件、设计原则和实施策略,旨在为后端开发者提供构建和维护高效微服务系统的实用指南。通过分析微服务的最佳实践和常见陷阱,我们揭示了如何优化系统性能、保证服务的高可用性以及如何处理分布式系统中的复杂性。
|
18小时前
|
缓存 NoSQL Java
构建高性能微服务架构:Java后端的实践之路
【5月更文挑战第5天】在当今快速迭代和高并发需求的软件开发领域,微服务架构因其灵活性、可扩展性而受到青睐。本文将深入探讨如何在Java后端环境中构建一个高性能的微服务系统,涵盖关键的设计原则、常用的框架选择以及性能优化技巧。我们将重点讨论如何通过合理的服务划分、高效的数据存储策略、智能的缓存机制以及有效的负载均衡技术来提升整体系统的响应速度和处理能力。
|
19小时前
|
监控 持续交付 数据库
构建高效可靠的微服务架构:策略与实践
【5月更文挑战第5天】 在当今快速发展的软件开发领域,微服务架构已成为构建可扩展、灵活且容错的系统的首选模式。本文将探讨如何通过一系列经过验证的策略和最佳实践来构建一个高效且可靠的微服务系统。我们将深入分析微服务设计的核心原则,包括服务的细粒度划分、通信机制、数据一致性以及容错处理,并讨论如何利用现代技术栈来实现这些目标。文章将提供一套综合指南,旨在帮助开发者和架构师在保证系统性能的同时,确保系统的稳健性。
11 4
|
1天前
|
Kubernetes 监控 Docker
构建高效微服务架构:Docker与Kubernetes的完美搭档
【5月更文挑战第4天】在现代软件开发中,微服务架构已成为实现可扩展、灵活且独立部署服务的流行解决方案。本文将探讨如何利用Docker容器化技术和Kubernetes容器编排平台来构建一个高效的微服务系统。我们将分析Docker和Kubernetes的核心优势,并指导读者如何通过这些工具优化微服务部署、管理和扩展过程。文章还将涉及监控和日志管理策略,以确保系统的健壮性和可靠性。