2天时间,聊今年最热的 Agent、上下文工程、AI 产品创新等话题。2025 年最后一场~ 了解详情
写点什么

多元架构时代技术学习的正确姿势

宋文喆

  • 2019-12-16
  • 本文字数:3958 字

    阅读完需:约 13 分钟

随着云计算进入多元时代,企业对多元计算架构、多级平台架构以及多形态计算架构提出了更高的需求。在这些需求下,云服务厂商需要提供怎样的云架构解决方案,才能助力企业加速智能化转型和业务创新?12 月 6 日,ArchSummit 全球架构师峰会北京站,来自华为云的 4 位资深技术专家在【多元架构时代的技术挑战】专场做出了他们的分享。以下内容为演讲整理。


本次技术专场分为 4 个分享环节,解析 “AI+5G” 下的云基础设施面临的挑战,介绍华为云擎天软硬协同架构的解决方案;架构师在多元挑战下的思考;NUMA 架构下的性能挑战和 openEuler 的技术特点。

擎天软硬协同架构解析

第一位分享嘉宾是华为云擎天架构负责人、高级架构师李模华。他指出在“AI+5G”的技术驱动下,将导致云游戏、车联网、物联网应用的大规模爆发,这些应用同算力需求将汇集在云端。未来创新带来的挑战,暴露了传统云计算底座的多个问题,主要集中在 5 个方面:


  • 性能:公有云上虚拟化面临 3% 到 15% 的虚拟化消耗,在私有云的场景,如果没有经过合理的调优算力损失可能更严重。

  • 成本:裸金属、虚拟机、容器、Serverless 多形态无法共存。

  • 安全:早期的 CPU 架构可能并没有完整的去考虑云计算场景,存在虚拟机逃逸、数据窥探等安全问题。

  • 稳定:多租户产生邻居噪音,对于性能抖动只能尽力而为。

  • 加速:简单的基于策略的硬件加速,缺少智能感知、适应性差的问题

(华为云擎天架构负责人、高级架构师李模华)


对于传统底座存在的问题,我们认为下一代云计算底座应该具有:多样算力、多种粒度、稳定低时延、智能加速、高密度零开销、安全可靠的这六个特征,李模华说道。随后他介绍了下一代云计算底座:华为云擎天软硬协同架构,在传统云计算底座问题上的解决方案。擎天软硬协同架构主要由三大部分组成:- 擎天智能卡- 统一智能加速框架- 擎天虚拟化


擎天智能卡包含了华为自研的很多的芯片,其中包括像网络加速芯片、存储加速芯片、安全芯片、AI 芯片、鲲鹏芯片、SSD 芯片。统一智能加速框架包括,擎天加速面 - 网络、擎天加速面 - 存储。擎天虚拟化是根据华为云自己的特点完全自研,重构了完整的虚拟化领域。主要用来解决传统云计算底座存在的问题。


在成本方面:擎天虚拟化前端支持虚拟机、安全容器、Serverless、系统容器的多种形态。


在加速方面:擎天架构可以支持单一的云管控子系统。具有多个加速面横向扩展的能力,比如本地盘卸载加速(华为自研 SSD 控制器芯片)、网络 I/O 加速(华为自研网络芯片)、存储 I/O 加速(华为自研存储加速芯片)支持 DIF,EC,QOS 加速。李模华提到,通过软硬结合的方式,我们可以在支持 NVME 的存储设备同时,提供一个比较固定的算法逻辑,像 DIF、EC 的芯片级别的加速,我们会把这部分固定的逻辑通过我们专用的芯片去做一个加速,这样可以省去通过通用的处理器来加速消耗大量资源的问题,可以解决性能提升的瓶颈问题。


在稳定性方面,配合定制的 Hypervisor,实现业务零抖动。目前 KVM 的实现,CFS 的调度,因为要兼顾通用场景的诉求,它的时延是非常差的,在卸载的场景下通过自研的调度,做到业务的零抖动、CPU 内存零预留。

架构师在多元挑战下的思考

第二位分享嘉宾是,华为云应用架构首席技术专家姜胜。他首先谈到了架构师的成长历程。从普通程序员到高级程序员在到架构师。需要具备最重要能力是抓住事物的本质,能够去抽象这个事物的本质,将一个复杂的系统变成比较简单的系统。姜胜提到。


多元架构是我们现在这个快速变化的时代催生出来的,分成了 3 个方面:


  • 技术的爆炸:移动互联、云计算、人工智能、物联网。

  • 环境的多元化:混合云、移动设备多元化。

  • 商业需求多元化:各种各样的商业应用都是 7 天×24 小时不中断,高可用。

(华为云应用架构首席技术专家姜胜)


这就使得我们应用的架构变得非常重要,如果系统没有一个好的架构,就没有办法去满足各个方面的需求,技术变化的需求,环境多样性的需求,和艰巨的商业需求。在这些多元架构的挑战下,作为架构师如何实现价值最大化,怎么能更好的去影响团队,帮助公司更好的发展。姜胜做了以下 5 点的分享:


  • 工具的选择

  • 找出不同系统里的共性

  • 系统复杂性的屏蔽

  • 设计系统的可扩展性

  • 跨资源优化


工具的选择,这个是作为架构师一个首要的问题,选择什么样的工具才能帮助你的组织,更好的去解决多元化所产生的挑战。确定组织的工具,这是一个方面。姜胜提到,软件开发平台 DevCloud 基本上是业界最完整的全流程的 DevOps 的工具链,架构师在选择时可以有所考量。


找出不同系统里的共性,公司里有各种各样的产品线、业务线。它们都需多样的系统去支撑。架构师不可能写这么多的系统,每一个系统都用不同的东西,所以说这里对架构师的挑战,就是怎么在不同的系统里面看到它的相同性。这个抽象能力也是架构师必须要具备的,在这种多元化的背景下显得尤为重要。很多厂商在说的中台其实是用了相同的理念。


系统复杂性的屏蔽,每个系统都会有自己比较复杂的地方,你不可能让所有人去对这些系统都有了解。这就需要架构师对单个系统的复杂性进行屏蔽,这样在做系统设计的时候,就可以做到降低用户的学习曲线。


设计系统可扩展性,每个架构师在做系统设计的时候,应该把系统的可扩展性考虑在里边。设计系统时不可能把所有应用场景都想全,可能推出后,过不了多久就会过时,但是你又要保持这个系统的价值,如何做?就是通过这个系统在设计时的扩展性,能够使新东西、现在没有预想到的东西或者外部的系统能够跟你进行对接。


在云服务的过程里面,各种不同的云服务厂商它的单一服务能力,可能是不一样的,所以你在做系统设计的时候,如何使你的系统架构能够运用各个不同的云服务厂商优势处,尽量避免他的弱点。怎么能够协同用到各个不同系统最佳的服务,这个也是架构师在系统设计时需要考虑的。

NUMA 架构下的性能挑战

第三位分享人是华为云智能计算研发部主任工程师王博。说到服务器的 NUMA 架构,大家或许都知道。NUMA 架构在中大型系统上一直非常盛行,也是高性能的解决方案,尤其在系统延迟方面表现都很优秀。但 NUMA 架构对服务器的相关性能到底有什么影响,如何设置会更好,王博在此做出了分享:


  • CPU 从单核到 SMP

  • 从 SMP 到 NUMA

  • NUMA 架构的特点

  • NUMA 的配置方法

(华为云智能计算研发部主任工程师王博)


CPU 从单核到 SMP,从 2006 年左右开始,所有的 PC、服务器的处理器,都迈入了多核时代。这时出现了多核架构,称为 SMP:对称多处理系统。在 SMP 架构下的计算机中,每个核都是对等的,所有的核通过总线访问所有内存,每个进程在调度时,可以在任意一个核上运行,在操作系统和内核的支持下,整个系统能做到非常好的负载均衡,性能得到很好的发挥。

(从单核到 SMP)


从 SMP 到 NUMA,所有的核均通过总线访问内存,当核数不断增加的时候,内存总线成为了瓶颈。为了解决这一问题,NUMA 架构出现了,非统一的内存访问架构。右图是一个 NUMA 架构的示例,这里有两个 CPU,每个 CPU 内有两个 NUMA Node。在 NUMA 架构下,CPU 被分成了多个节点 Node。每个节点有自己的内存 Controller,不再受内存总线带宽的限制。

(从 SMP 到 NUMA)


NUMA 架构的特点,每个 NUMA 节点上面有自己的内存的卡槽、有自己内存的控制器、有自己的内存,这里面带来两个概念,第一个概念 CPU 有了节点,第二,我访问不同内存的时候,虽然所有内存在整个服务器上都是可见的,实际上在物理上他们是分布的,他们通过不同的结点、通过不同的内存访问器去访问的,就有了距离。

(NUMA 架构的特点)


(NUMA 配置的方法)


openEuler 的技术特点

第四位分享嘉宾是,华为云开源生态发展专家、openEuler 首席技术布道师朱星。分享了华为云容器解决方案 iSula 和 openEuler 的介绍:


  • 容器解决方案 iSula

  • openEuler 介绍

(华为云开源生态发展专家、openEuler 首席技术布道师朱星)


容器解决方案 iSula,是华为云在容器解决方案的总称,主要有三大模块。第一个是容器引擎 iSulaD,第二个是容器的储存,第三个是容器网络。具有三个优势特性:


  • 一步到位兼容最新标准(OCI 和 CRI 标准)

  • 相比 Docker 常驻内存进程从 3 个减少到 1 个,调用层级从三级压缩到 1 级,提升启动速度

  • 采用 C 语言,开销减小,原先使用 GO 语言编写,代码量非常大,通过 C 语言重写使代码量从 30 万变成了 7 万,使容器非常轻薄实现代码精简化。


openEuler 是一个基于华为 EulerOS 的开源服务器操作系统。另外一个含义是 openEuler 社区,openEuler 社区由华为牵头成立,多方参与。社区的定位是全面开源,对接了多个社区,包括 Linux 社区、Linaro 社区等等。


华为云希望通过共享的方式打造社区的操作系统 openEuler,基于 openEuler 可以有两种形式,一种就是提供给我们的合作伙伴,比如商业发行的厂家,做二次商业发行。另外可以提供给广大的互联网厂商或者中小企业直接使用。


希望社区开发者规模能够达到数百万,一起来参与从内核到基础包、标准包、扩展包的开发。


2019-12-16 16:411939

评论

发布
暂无评论
发现更多内容

双非本科怎么了,照样拿到阿里offer!分享阿里技术四面+交叉面+HR面难忘经历

Java 程序员 架构 面试 大前端

Cortex 是什么?

耳东@Erdong

Prometheus Cortex 水平扩展 10月月更

模块九作业

Mr.He

架构实战营

「人工智能科普系列」【29】人类将如何变革--走出金字塔模型(上)

Databri_AI

人工智能

拯救遗留系统:重构函数的 7 个小技巧

Phoenix

重构 java

阿里云云计算助理工程师认证(ACA)50个资源合集和备考题库 易筋 ARTS 打卡 Week 72

John(易筋)

ARTS 打卡计划

v04.03 鸿蒙内核源码分析(任务调度) | 任务是内核调度的单元 | 百篇博客分析 HarmonyOS 源码

鸿蒙研究站

HarmonyOS 任务栈 OpenHarmony 鸿蒙系统

SpringBoot 实战:优雅的使用枚举参数

看山

Java Sprint Boot Effective Spring 10月月更

接棒运动赛事!工厂里也有热血竞技?

脑极体

微博评论架构设计

小智

架构训练营

这是我在金九银十收到的第五个 Offer:字节跳动 Java 研发岗

Java 程序员 架构 面试 后端

区块链技术在商业领域的新运用-智能合同

CECBC

架构实战营-模块九

NewBranSTONE

架构实战营

C++ 20语言特性

赖猫

c++ 后台开发 后端

DjangoTask2

南湖职业技术学院机械狗

区块链+数字经济,我们看到了什么

CECBC

Sql学习

南湖职业技术学院机械狗

''内卷"把我逼成什么样了!气得我把 Github 上所有面试题都整理了一遍!

程序员 架构 面试 后端 java

《C++ Primer Plus第六版》读书笔记

IT蜗壳-Tango

10月月更

自我提升:高效能人士的 7 个习惯学习笔记(三)

程序员架构进阶

读书笔记 自我管理 自我提升 10月月更

【设计模式】第二篇 - 组合迭代器

Brave

组合模式 迭代器模式 10月月更

四面阿里巴巴如愿拿到offer定级P7,为此我筹备了半年

程序员 架构 面试 大前端 java

在线HTML转JS/JSON工具

入门小站

工具

【Flutter 专题】33 图解自定义 View 之 Canvas (一)

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 10月月更

研发应用--Prometheus

en

Prometheus

在GitHub热屠榜的Spring Cloud Alibaba源码笔记,竟然出自此人之手!

Java 架构 面试 程序人生 编程语言

Flutter 无埋点SDK实现

GrowingIO技术专栏

flutter 大前端 sdk SDK测试

微信频繁读取 iOS15 用户的相册?

池建强

微信 隐私

产品设计:娱乐化思维

石云升

产品设计 产品分析 10月月更

linux之yum源设置代理

入门小站

Linux

再说JavaScript 的 null 和 undefined

devpoint

null JavaScrip 10月月更

多元架构时代技术学习的正确姿势_架构_InfoQ精选文章