阿里云「飞天发布时刻」2024来啦!新产品、新特性、新能力、新方案,等你来探~ 了解详情
写点什么

工作 10 年的老程序员,参加 ArchSummit 会议的感悟总结

  • 2023-05-28
    北京
  • 本文字数:4373 字

    阅读完需:约 14 分钟

工作10年的老程序员,参加ArchSummit会议的感悟总结

作者:王栋年


很有幸参加了 2023 年 3 月在北京举办的ArchSummit架构师峰会。虽然时间比较久了,但是参会体验,还是要慢慢回味的,会议上的内容,也值得回味,俗称反刍,想想会议上的一些演讲话题,我仍然觉得对工作对个人是有帮助的。


个人觉得这次大会比较有吸引力的地方是,一方面内容都来自真实的实践,可以看到 Top 级的公司遇到了哪些问题,用了些什么技术,以及对这些问题和技术是怎么思考的;另一方面,汇聚了较多的架构师或技术管理者,是个不错的交流平台。


得益于帝都密集的头部企业以及人才,北京大会的讲师阵容和主题内容可谓豪华。总共 2 天时间,由于是 3 场并行同时开讲,再加上第一天下午我自己也有一个分享 topic,所以只能选择一些自己感兴趣的话题,或者相关性较强的话题去听一下。


这里记录一些所见、所闻,以及个人所想,仅供参考,欢迎交流。


1- 第一天上午的 Keynote 主题演讲,这部分都是大咖出场。


蚂蚁研究院长,清华大学陈文光教授(国家杰青)分享了 AI 与数据融合的基础设施技术展望,内容比较有深度,也有可能是段位相差太大,哈哈,所以只能按照自己的肤浅理解来做个简单总结:


陈老师主要围绕 AI 和大数据的融合方面的研究以及实践,介绍了蚂蚁集团对在线离线一致性,以及基于 JVM 的数据处理系统性能问题方面的一系列优化实践。


关于 AI 和大数据的融合,以我粗浅理解,白话点说就是"Python 和 Java 的融合":AI 领域以 Python 生态为主,大数据处理领域以 Java 生态为主。那孤立有什么问题?


• 2 套独立生态的系统带来的更多开发运维成本

• 对工程师要求会增加(比如同时会 Python 和 Java)


在今年 AIGC 的特别加持下,AI 将会进一步加快普及,相信融合的需要应该会越来越强,也越来越迫切。


2- 谭坦分享了施耐德电气数字化演进,高屋建瓴,从一个非常全面和宏观的角度,讲述了人(组织)、业(业务)、技(技术)3 方面在数字化中转型中的演进和适配。非常好的感受到了企业发展过程中不同要素的有机融合以及相辅相成。


3- 人瑞人才的 CEO 张建国分享了数字化转型与人才策略的话题,这部分挺有趣,围绕着数字化的大方向(数字产业化和产业数字化),从市场和管理角度,讲了数字化人才的供需和发展情况。感受到程序员处在一个非常好的时代,学好技能,冲就对了,钱多多!


4- 多云 &多数据中心,在听讲或者交流中发现,有越来越多的企业已经在做或者计划做多云了,并且确实是用来解决成本、稳定、合规等现实问题。针对不同的问题或需求,有不同的多云架构模型:


• 合规多云。主要解决数据安全或合规问题

• 业务多云。主要解决成本问题

• 弹性多云。主要解决容量问题

• 容灾多云。主要解决可用性问题


无论是那种模式或形态,本质都是从中心化(单云)到分离化(多云混合云)的方向走。


随着多云的普及,开始出现对多云基础设施的研究和落地,其中比较有影响力的当属 UC Berkeley 的 Sky Computing 了,目前已经有雏形的是 Skypliot。有兴趣的话同学可以自行查阅资料了解。


5- 最后,感谢专题出品人蚂蚁大安全首席架构师陈锣斌大佬,结合我们公司(酷家乐)多云架构的 topic,对未来发展的一些建议和指导。


6- 其他时间呢,我也听了一些其他的话题,例如数据架构,主要包括大数据和数据库等,有京东、字节、小红书、蚂蚁(OceanBase)、MatrixOne 等公司的分享。


7- 先说下云原生。大数据和数据库的云原生,是这几年非常热门的话题,且已经逐步落地到了实践中,产生了一些可见的价值。实现数据(库、仓等)的云原生,就要基于云的架构和底座(包括软硬件),对数据库等进行重构,使其更加适合云环境。这样的架构有 2 个明显特征:存算分离,Serverless。注意云原生不是 Kubernetes Operator!


为什么要投入重构。这里从云原生这个架构的好处说起(前提是处在云时代这个大环境):


• 首先是存算分离。CPU、Mem、Storage 等资源可以分别独立扩容,终于不再受一体运行的强绑架限制(结果就是很多时候,存储负载和计算负载失衡严重或错配。之所以越来越凸显是因为大数据时代的到来)。同时因为计算节点无状态,使得数据库秒级扩缩容等成为可能。相信所有做数据库的同学,对突如其来的扩容需求,都深有感触。

• 另外是动态按需利用。比如为了应对自然流量的波动,我们现在的数据库一般会预留一定 Buffer 的容量,这个看上去很合理。但大部分时候,这些资源确实都是空闲多余的,很多场景下夜间时候更是如此。Serverless 产品,可以真正做到 on-demand,scale to zero。保证了资源的实时利用率。


其次云原生数据平台。简单说,就是基于云来构建云原生数据平台,比如存储层以对象存储(容量无限,单价很低)为代表的云存储(如果是 IDC 私有云,一般是 HDFS 或 MinIO 等),计算层有 Spark、Flink、Ray 等。存算分离后为了提升性能可能加个 JuiceFS/CubeFS 类的中间层(通俗点说就是对象存储缓存层)。存算分离后再进一步,就是 Serverless 化了,比如国内阿里云的 MaxCompute 等已经做到了这点。

 

最后云原生数据库。在最经典的 RDBMS 领域,自业内首个云原生关系数据库 Aurora 问世(堪称革命,此前 40 多年里关系数据库架构确实没有大的根本性改变),发展到现在,有近 10 年之久了,国内的厂商都先后完成了跟进,比如阿里云 PolarDB、腾讯 TDSQL-C 等,最大数据容量可以到上百 T,并且支持了 Serverless。目前来看,关系数据库是率先完成云原生化的,接下去就是我们如何更好的理解并运用到我们的应用架构中,产生更大的价值。


总体来说,数据架构已经完成了从托管服务(1.0)到存算分离(2.0)的转变,正在向 Serverless(3.0)演进。无论从成本(越来越低),还是生产力来说(越来越高),这个应该都是发展的必然。

 

当然了除了上面提到的存算分离、Serverless 外,构建云端数据架构还有其他一些重要的思路或模式,比如 Spot Instance,Tiered Storage 等。对于 Tiered Storage 我们已经有一些不错的实践,详见 https://mp.weixin.qq.com/s/5tLY9K2MBV_CT7QBmFfbyQ

 

8- 混合负载,数据库方面,这几年最大的感受应该就是国产化了。


从达梦完成 IPO,到 TiDB、OceanBase 等很多 infra 的成功出海,都印证了国内这几年数据库发展都确实不错,颇有百花齐放,百家争鸣的味道。把一些较有名气或影响力的数据库介绍读一遍,会发现大部分的国产数据库,选择的都是分布式 + HTAP 这个方向(希望国产数据库能在数据库这个领域,成功换道超车)。再放眼全球,Google 的 AlloyDB,Snowflake 的 Unistore,以及开源第一数据库 MySQL 支持 HeatWave,这些都说明 AP 和 TP 的融合在越来越近,数据库在努力朝着 All Data In One 的方向前行。不过亚马逊云科技(AWS)目前采取的是另一种做法,没有直接给 TP 数据库增加 AP 的支持,而是通过集成 Aurora 和 Redshift 实现 Zero-ETL,不知道是不是在练一个更大的招,让我们静静的等待 2023 re:Invent 大会。

 

回到现实,不得不说,天下苦同步或者 ETL 久矣,拿我们来说,每年都多少会有数据同步延迟或不一致导致的线上问题。在不同组件或引擎间转移数据,除了运维负担外,多处存储和计算确实是费钱。在简单或中小规模场景下,通过一个 HTAP 数据库同时满足 OLTP 和 OLAP 需求;通过分布式数据库消除现有的物理分库分表,都是可以实现进一步的降本增效。

 

9- 混部,这不是一个新概念了,在大数据或成本优化的主题里比较多提到。主要是利用不同业务潮汐的特征,通过时空上的"削峰填谷",来充分有效的利用资源。特别是在当下降本成为很多企业的新常态下,混部就会被格外关注。


10- 微服务和高可用。主要是阿里、斗鱼、京东、字节等带来的分享。在高可用领域,经过多年的发展,已经比较透明,没什么秘密,从宏观到微观,工具到技术,基本是大同小异,区别可能就是做的是否到位,是否正确。另外随着云原生架构的深入,构建高可用可能会有一些差异或者新要求,近年来也出现了一些云原生高可用方面不错的话题和实践。

 

11- 高可用,对高可用 topic 中一些有启发的内容,做个简单的提炼总结:

 

  • 细节决定成败

  • ⾼可⽤需要⼀套持续迭代的体系来保障,体系是通过企业级架构的升级来实现提升可⽤性降低复杂度

  • 性能优化请求数据精简缓存有效运用

 

这些内容,让我再次想起了蔡超在某次会议上演讲上的一些话:

• 那些看上去简单朴素的,往往是最有用,最可靠的。

• 简单不意味着容易,很多简单的可能还是被做错了。

 

12- 关于性能优化,总体原则,应该是一个 Top-Down 的过程,从业务到实现,从整体到局部,从架构到具体组件。业务层和应用层的优化一般来说更容易有收益,越是靠近末端,发挥的空间越小。同样的,对于架构设计有缺陷的系统,我们不能指望把马车优化为飞机。


13- 微服务。字节分享了抖⾳⽹关的探索和实践。其中有 2 点可能值得学习借鉴:

  • BFF 支持(基于 GraphQL):做接⼝聚合、数据编排、字段裁剪等

  • API Workflow:IDL 规范与流程约束,提⾼ API 变更效率和稳定性


14- 架构师成长这块内容主要是两部分:

 

第一部分是如何成为架构师的晚场开放交流,基于现场听众的提问和互动,综合京东康杨,Intel 汪彬等架构师的观点,总结 3 点常见困惑以及个人见解:

 

① 业务和技术

• 不是独立甚至对⽴,而是统一和相互促进

• 沟通和尊重,尊重不同角色或岗位人员的专业性

② 短期和长期

• 站得高:了解愿景,关注长期收益或价值

• 接地气:基于实情,解决现实问题或矛盾

• 短期 → 长期:有路径、有节奏

③ Everything is a trade-off

• 架构设计或实现总是在条件限制下进行

 

第二部分是关于架构师成长的专题。主要听了 2 场:

 

① 神策数据张铎大佬,以"ToB 服务 - 私有化部署"为例,通过分析其中的挑战和解法等,阐述了架构师的“变与不变”:

• 变:(拥抱)业务、技术的变

• 不变:架构师的职责

② 阿里巴巴郭亮大佬,以广告应用中台建设过程中的具体实践和经验介绍为主线,分享了架构思维成长:

• 架构师的要求:知识、人格、沟通、管理

• 代码是资产还是负债?(大家可以想想这个问题)

• 面对新技术:实用主义

 

2023,不管我们处在什么样的技术浪潮中,作为技术人,关注技术趋势是我们的本能,也是保持技术敏感度的重要一环。除此之外呢,所做的事也要贴近业务,业务才是企业生存之本。

 

【嘉宾介绍】王栋年:群核科技(酷家乐)资深专家


先后于 RingCentral、阿里巴巴等大型企业从事技术研发工作。目前负责群核科技(酷家乐)中间件的研发和团队管理工作,期间完成了多款中间件的开发建设以及升级换代。成功主导了多云架构、全球化部署等多个复杂项目的设计以及实施。

 

【活动推荐】

 

7 月 21-22 日,ArchSummit(深圳站)全球架构师峰会,将在深圳·博林天瑞喜来登酒店举办,这次会议还是会围绕架构技术实践来展开分享,例如:智能化数据治理、可持续软件、DataOps、Data Fabric 等高效数据开发与服务模式、Mesh 技术实践案例、QUIC 传输和架构优化、跨境数据安全与合规等等。感兴趣的可以点击“阅读原文”查看官网。购票请联系票务经理瑞丽 18514549229



公众号推荐:

跳进 AI 的奇妙世界,一起探索未来工作的新风貌!想要深入了解 AI 如何成为产业创新的新引擎?好奇哪些城市正成为 AI 人才的新磁场?《中国生成式 AI 开发者洞察 2024》由 InfoQ 研究中心精心打造,为你深度解锁生成式 AI 领域的最新开发者动态。无论你是资深研发者,还是对生成式 AI 充满好奇的新手,这份报告都是你不可错过的知识宝典。欢迎大家扫码关注「AI前线」公众号,回复「开发者洞察」领取。

2023-05-28 19:455527

评论 1 条评论

发布
用户头像
到位,哈哈哈

Python 和 Java 的融合

2023-05-29 09:19 · 江苏
回复
没有更多了
发现更多内容

构建Apache Flink 开发环境(四)

数据与智能

flink IDEA 开发环境

白话机器学习(5):更高端的线性回归模型-Ridge Regression

杜吉普

机器学习

白话机器学习(8):世界上本没有随机森林,决策树多了,也就变成了森林

杜吉普

机器学习

SpringBoot 数据库操作(集成MyBatis)

xcbeyond

mybatis SpringCloud 8月日更

RocketMQ之Store模块

邱学喆

commitlog consumequeue index ha flush

白话机器学习(6):用Lasso Regression踢出浑水摸鱼的变量

杜吉普

机器学习

白话机器学习(9):用户精细化管理背后的秘密:K-means聚类模型

杜吉普

机器学习

不装了、摊牌了,我们要搞事情

不脱发的程序猿

程序员 技术 程序人生

白话机器学习(2):产品经理都在用的线性回归模型

杜吉普

机器学习 线性回归

synchronized优化手段:锁膨胀、锁消除、锁粗化和自适应自旋锁...

王磊

Java 并发 synchronized 8月日更

白话机器学习(3):理解机器学习中的Bias与Variance

杜吉普

机器学习

前端之数据结构(六)图

Augus

数据结构 8月日更

架构训练营模块四作业

Lemon

负载均衡的原理与设计

海明菌

负载均衡 负载均衡算法 负载均衡架构

白话机器学习:什么机器学习模型?

杜吉普

机器学习 数据分析 数字化转型

杜吉普:指标体系多重奏——指标体系建立思路

杜吉普

数据分析 指标体系 数据运营

杜吉普:数字化运营广告营销之道

杜吉普

机器学习 互联网广告 营销数字化

《社会心理学》--从众和服从

箭上有毒

8月日更

趁着课余时间学点Python(八)函数的简单理解

ベ布小禅

8月日更

白话机器学习(4):模型的裁判-交叉验证Cross-Validation

杜吉普

机器学习 杜吉普

[架构实战营一期] 模块四作业

trymorewang

架构实战营

Linux之ping命令

入门小站

Linux

数据缓存历险记(四)--LRU大师兄的Java实现

卢卡多多

redis LRU 8月日更

白话机器学习(7):人类最好理解的预测模型-决策树Decision Tree

杜吉普

写作 7 堂课——【4. 联机式写作】

LeifChen

素材 写作技巧 8月日更 联机 写作网感

Node.js 实现存储服务的上传功能【包含前后端代码】

liuzhen007

8月日更

如何加强自己对Java的编码规范

Bob

Java 8月日更

Spring梳理

十二万伏特皮卡丘

架构实战营 - 毕业总结

༺NPE༻

【Vue2.x 源码学习】第三十篇 - diff算法-比对优化(上)

Brave

源码 vue2 8月日更

几十种编程语言说Hello World

入门小站

工具

工作10年的老程序员,参加ArchSummit会议的感悟总结_ArchSummit_Lucien_InfoQ精选文章