写点什么

QCon 2020 深圳,看华为云云原生应用开发实践

2020 年 12 月 10 日

QCon 2020深圳,看华为云云原生应用开发实践

作为当下技术领域最火热的技术趋势之一,云原生正在从根本上改变企业应用设计、开发、交付与运维的方式。云原生与 AI、区块链、5G 等前沿技术结合,能够为企业数字化转型过程中面对的市场多变环境与需求提供解决方案,并显著降低企业应用的开发门槛,为更多创新场景持续输出价值。


为了帮助企业更快找到云原生应用开发的入门路径,轻松跨过新技术、新模式的采用门槛,华为云作为领先的云服务提供商致力于成为最佳应用构建平台,提供云原生应用开发的生态环境。近日,由 InfoQ 主办的全球顶级技术盛会——QCon 全球软件开发大会 2020 深圳站正式开启,华为云开发者生态总监张全文作为“云原生应用开发实践”专题出品人,携手华为云四位资深技术专家带来精彩分享。本场专题涵盖企业微服务开发、云原生应用开发与最佳实践、区块链应用开发等内容,为与会者深度解析了企业下一代应用开发模式的要点与秘诀。


企业微服务应用开发思考与实践


专题的第一场分享来自华为云微服务产品经理丛琳琳带来的企业微服务应用开发的相关思考。


谈论云原生的主题,绕不开的就是云原生在实践中的框架。前不久,华为云发布了云原生产业白皮书,并提出云原生 2.0 全景图。在华为云看来,云原生 2.0 是企业智能升级的新阶段,如果说云原生 1.0 是“ON Cloud”,那么云原生 2.0 就是“IN Cloud”。第一代云原生只是将传统业务搬迁上云,第二代云原生,企业云化从“ON Cloud”走向“IN Cloud”,生于云、长于云且立而不破。云原生 2.0 能够真正走进千家万户,在无数传统行业发挥价值,这也是符合新基建背景下的企业需求的。


在云原生 2.0 的环境下,企业希望将应用快速上云,并灵活应对业务和用户环境,这就需要通过灵活的微服务架构来承载业务和应用。微服务低耦合、高内聚的特性非常适合将复杂业务拆解为许多小型模块,方便开发团队快速开发、快速响应。然而,微服务应用开发也存在着一系列固有问题,只有解决了这些问题,才能充分利用微服务的优势,达到企业开发转型的目标。


对于开发人员来说,首先要注意的是微服务开发并非银弹,对于具体的业务来说,首先要判断业务本身适合单体还是微服务,不能一概而论。尤其是本来就紧密耦合的服务,以及存在循环依赖的服务都不应该拆分。原有业务拆分成微服务时也要根据应用场景和业务特性选择合适的拆分策略。微服务拆分时往往还需要设计数据库拆分策略,后期的管理运维工作都要寻找对应的支持工具。


为了适应微服务开发体系,组织的人员架构和流程也要做相应的调整。微服务开发团队适合小而精的模式,通过“服务契约”来实现团队间的高效协作。应用上线应采取灰度发布模式,而微服务的治理则要做到以业务场景为基准。


最后,丛老师为大家讲述了华为手机终端、同济大学抢课系统和坤德岩土数字化转型几个案例。在这些案例中,微服务体系资源利用率高、可扩展能力强、成本低廉的优势得到了比较好的体现。


云原生应用开发的大道与小术


云原生时代,企业开发人员需要面对众多技术与模式的转变,微服务开发只是其中之一。华为云高级产品经理赵彦深入探讨了云原生应用开发者需要面对的挑战与诉求,结合华为云 CloudIDE 服务基于云原生 2.0 的技术与实践,分享了开发者如何适应和突破。


赵老师为云原生开发总结了四个关键字:“道、法、术、器”,“道”就是云原生开发理念,“法”即开发方法,“术”则为开发技术,而“器”是实际应用交付需要的工具。


云原生开发的核心理念就是提升质量效率,这需要在项目启动、中间交付和上线发布环节都做到高效灵活。为了达成这样的目标,华为云 CloudIDE 开发平台创造了一些方法来帮助开发者解决实践中遇到的种种困难。


  • 第一条是 API 契约:华为云本质上为开发人员提供了一个开发平台,通过开放 API 向合作伙伴开放业务能力。开发人员能够通过 API 集成方案快速创建开发场景,并在平台内完成交付与部署工作,全程都不需要离开浏览器页面,从而显著提升了效率。

  • 第二条是插件:插件是华为云开发平台的扩展契合点,为开发场景提供各种各样的能力,而无需开发人员投入大量资源去专门制作功能。

  • 第三条是架构。华为云基于云端 CCE 容器服务、存储服务等,将所有能力整合成同一套框架,根据不同业务场景特征从后端拉取对应的镜像,整合合适的插件、模板等,再推送给用户。这样一来,同一套架构就可以适应各类场景,帮助开发者提升特定场景中的开发效率。


同时,华为云 CloudIDE 也提供了以 WeLink 为基础的移动轻应用前后端云上同步交付、通过分布式云调试器 CloudDebugger 在多微服务复杂环境中动态追踪排错等极具竞争力的技术。这些技术与华为云服务结合,共同形成了 CloudIDE 的整体服务架构:最底层是华为的基础软硬件设施;第二层是开发者能够使用的能力,包括编码、调试、部署、业务适配等;第三层则是解决方案的场景适配和合作伙伴的生态工具包。整套架构基于华为云原生 2.0 理念,基于华为计算、存储、中间件、人工智能等能力打造和实现,方便集成且易于扩展。


赵老师特别介绍了华为云 CloudIDE 为鲲鹏生态赋能的实践案例。为了推动传统 x86 应用向鲲鹏计算框架移植,华为云提供了海量工具和一套基于鲲鹏 IDE 的开发环境,并通过插件、API 来实现性能优化和计算平台对接,使用户可以很简单地完成鲲鹏应用移植工作。类似的,在量子计算、教育培训、人工智能等众多领域都可以利用华为云的方案进行应用开发和生态建设。这些全新平台的崛起也体现了云原生开发真正的魅力和价值。


云原生应用与传统应用共存的最佳实践


华为数字化转型实践见证了自身从“非云原生企业”逐步成为“新云原生企业”的发展历程。即便掌握了云原生应用开发的能力,华为自身在云原生落地过程中也遇到了诸多挑战,围绕云原生应用与传统应用共存的实践,华为云应用平台领域集成总监黄靖凯,带来精彩分享。


在云原生落地过程中,企业往往面临以下困扰:

一、企业业务场景非常复杂,在信息化到数字化的过程中产生众多“信息孤岛”;

二、企业新旧系统替换无法一蹴而就,云原生应用实际落地周期漫长;

三、物理数据无法高效接入数字系统和大数据平台。


总体而言,应用数据全面联接是企业数字化转型最艰巨的任务,也是云原生从理论到落地过程中需要跨越的一大鸿沟。跨越鸿沟需要桥梁,而华为云为它搭起的桥梁名为 ROMA Connect。


ROMA Connect 源自华为 10 年+数字化转型实践,聚焦应用和数据的全面联接,它打破了企业使用云原生应用的时间、空间和开放性瓶颈,主要包含几大关键技术:

  • API 网关实现跨云集成。例如,应用数据可以通过 API 在不同云端流转处理,甚至实现跨 Region 的传输与编排。

  • FDI 实现异构数据间跨网集成同步。各类数据源可以统一获取、集成分析和同步,方便多类型数据源的协同工作。

  • MQS 实现应用就近接入,消费端决定路由策略。当业务需要各类能力时,可以直接访问距离最近的服务平台。

  • Link 实现设备间数据集成,解决 OT 数据与 IT 数据的融合需求,打破传统物理世界存在的信息孤岛。


华为云原生实践的核心是立而不破,新增能力生于云、长于云,把 AI、大数据、边缘计算、视频等新生能力用于企业,同时也需要继承和发展既有能力,并与新生能力立而不破、有机协同。如实践中的华为云与国内某个机场合作建立了“一张脸出行”的系统,大大提升了旅客的安检效率,高峰等待时间整体节省了 15 分钟。辅以旅客画像,进一步改善出行体验。这一案例也验证了云原生 2.0 时代,ROMA Connect 系统足以承担云原生应用与传统应用、业务应用与业务数据之间高效联接的重任。


高效区块链应用开发实践


区块链是下一代 IT 技术发展趋势中的重要的基础技术。区块链解决了多节点互信难题,可将人类从制度信任带入了机器信任时代。区块链技术的落地并不是“单打独斗”的,而是需要多方协作,汇聚从采集,分析,存储等技术。在华为云看来,区块链服务平台是支持产业发展的基础,区块链本身可以结合物联网等技术支持可信设备认证等工作,进而为上层业务带来更多价值。


华为云区块链高级产品经理王磊在本次论坛最后的分享环节,讲述了华为云基于云原生技术构建的区块链开发平台的应用实践。


华为云提供了区块链服务平台本质上是一种 BaaS(区块链即服务),基于该平台企业不仅可以快速构建可信区块链联盟网络,而且可以利用平台组件层积木式的搭建上层业务应用,包括解决数据可信共享,数据可信计算,多方可信协同等业务诉求。


开发者在华为云 BCS 开发区块链应用时,并不需要关心底层复杂的数据格式、框架协议、源码编译等细节,可以快速完成环境搭建,开发人员可以聚焦在上层应用的研发中。在 BCS 的帮助下,原本需要十几天的底层环境工作可以减少到几分钟。


在开发态,平台提供了集成式的云 IDE 环境,可以在云端快速实现合约的编写、调试、验证、安装部署等工作。区块链网络和应用进去运维态后,BCS 还可以提供了多维度的监控和日志能力,帮助开发人员快速检查各组件运行状况。在出现安全问题时,平台可以及时发送报警告知用户;遇到性能等运维问题时,用户也能通过监控和日志组合迅速定位故障点。BCS 为区块链网络和应用提供了全生命周期管理和支持。


目前,华为供应链和北京经信局等各领域客户,都已经利用华为云区块链平台成功研发了区块链应用,并取得了令人满意的效果。未来不同的业务场景还会对区块链技术提出更高的要求,尤其在性能和安全方面,华为云即将推出 BaaS 2.0 云服务,性能可提升至 5wTPS、在隐私保护、安全和易用性方面会进一步提升,同时通过跨链技术支持更大的扩展性。


云原生时代,华为云与开发者共成长


华为云基于多年在技术社区的贡献,在容器、微服务、DevOps 等技术领域持续创新,结合大量自身业务改造及服务企业级客户的实践积累,华为云将重点打造“创原会”等云原生交流平台,持续开源社区贡献,向开发者提供应用使能,AI 使能,数据使能三大技术使能服务,使其轻松应对未来云时代的挑战,助力开发者在云原生时代快速进化,持续成长。


2020 年 12 月 10 日 14:41906

评论

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

数仓ETL系统:给强大的“心脏”配上“超级流水线”

华为云开发者社区

数据库 数据仓库 GaussDB(DWS) ETL系统 MPPDB

第三次作业

Geek_9cf7b5

rocketmq优雅停机往事

捉虫大师

神仙打架!阿里p7码农跳到华为,看到这份SpringBoot资料马上收藏

java专业爱好者

Java

算法与数据结构(五)哈希表

3.141516

哈希表 数据结构与算法

技术探索系列 - 轻松带你掌握JMM(2)

李浩宇/Alex

JVM JMM 5月日更

母亲节|TcaplusDB祝天下母亲节日快乐!

数据人er

分布式 TcaplusDB Tcaplus NoSQL数据库

面试指北:算法与数据结构(四)栈与队列

3.141516

数据结构 队列 数据结构与算法

星环科技TDH8.0 使用必读 :为什么你需要存算解耦的多模型数据管理平台

星环科技

人工智能 大数据 云平台 数据管理平台 存算解耦

“区块链+疫情预警”!这个科研团队研发了传染病预警系统

CECBC区块链专委会

疫情

面试指北:算法与数据结构(一)开篇

3.141516

数据结构与算法

面试指北:算法与数据结构(三)数组与链表

3.141516

数据结构 数组 链表 数据结构与算法

区块链+农业,如何升级农业价值链

CECBC区块链专委会

农业

架构实战营模块三作业

竹林七贤

AI英雄出少年!奔赴星辰,他们正在创造黄金时代

百度大脑

AI

新书见面 | 《云原生时代的微服务架构实践》

Damon

微服务架构 云原生架构 云原生应用 5月日更

轶事

言未卜

STM32低功耗模式下GPIO如何配置最节能?

不脱发的程序猿

嵌入式 stm32 单片机 低功耗模式

面试指北:算法与数据结构(二)如何学习

3.141516

学习方法 数据结构与算法

【数据结构与算法】数组的增删改查

村雨遥

数组 数据结构与算法

NumPy之:使用genfromtxt导入数据

程序那些事

Python 数据分析 Numpy 程序那些事

从5大挑战带你了解多模态机器学习

华为云开发者社区

机器学习 多模态机器学习 多模态 异构数据

“下沉市场”中户外广告的发展空间

󠀛Ferry

5月日更

双向循环链表:鸿蒙轻内核中数据的“驿站”

华为云开发者社区

鸿蒙 数据结构 结构体 OpenHarmony 双向循环链表

在线体验四大名著情景(地图、游戏)

不脱发的程序猿

程序人生 开源项目 四大名著

架构实战营 -- 模块三

永佳

架构实战营

基于OpenPAI细化部署 Hadoop 集群

Damon

hadoop 5月日更

架构实战营模块3作业

Veek

架构实战营

深入浅出 LVS 负载均衡系列(二):DR、TUN 模型原理

UCloud技术

负载均衡

Nginx 常用配置清单

Java小咖秀

nginx Web 反向代理 HTTP

第一个鸿蒙应用

释缘

鸿蒙 HarmonyOS

QCon 2020深圳,看华为云云原生应用开发实践-InfoQ