写点什么

工作 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



2023-05-28 19:455963

评论 1 条评论

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

Python 和 Java 的融合

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

毕业设计项目

michael

架构实战营 #架构实战营 「架构实战营」

程序员远程办公喜忧参半| 社区征文

乌龟哥哥

7月月更

封装Ajax

Jason199

ajax 7月月更

线程常用的方法

zarmnosaj

7月月更

Spring Cloud源码分析之Eureka篇第一章:准备工作

程序员欣宸

Java spring SpringCloud 7月月更

从0到1建设智能灰度数据体系:以vivo游戏中心为例

vivo互联网技术

数据分析 根因分析 数据分析体系

浅谈一篇优质的小红书文案需要具备什么

石头IT视角

图解网络:什么是热备份路由器协议HSRP?

wljslmz

网络技术 路由协议 7月月更 热备份路由器协议 HSRP

资深工程师的技术方案思考模型

刘绍

方法论 工程师 软件设计 技术方案 程序员进阶

免费商城系统源码——如何选择?

开源直播系统源码

二次开发 免费源码 商城源码 免费商城源码

ORACLE进阶(二)视图详解

No Silver Bullet

oracle 视图 7月月更

毕业设计:设计秒杀电商系统

jiaoxn

「架构实战营」

透过JVM-SANDBOX源码,了解字节码增强技术原理

柠檬汁Code(binbin0325)

互联网架构 源码剖析 字节码增强 源码解读 Java’

疫情来袭--远程办公之思考|社区征文

桑榆

初夏征文

leetcode 121 Best Time to Buy and Sell Stock 买卖股票的最佳时机(简单)

okokabcd

LeetCode 动态规划 算法与数据结构

Java多线程案例之单例模式(懒汉,饿汉,枚举)

未见花闻

7月月更

如何远程办公更有效率 | 社区征文

宇宙之一粟

效率 居家办公 初夏征文

叮~您有一封Vue.js挑战邀请函,请查收

😶

JavaScript vue.js 前端 前端开发 开源项目

分布式系统:what、why、how

javaadu

分布式系统

Container killed by YARN for exceeding memory limits

怀瑾握瑜的嘉与嘉

spark 7月月更

高中肄业,从月薪1000到几亿融资的创业者,是它拯救了我!

博文视点Broadview

SAP UI5 应用的主-从-从(Master-Detail-Detail)布局模式的实现步骤

汪子熙

前端开发 SAP UI5 ui5 web前端开发 7月月更

如何有效远程办公之我见 | 社区征文

踏雪痕

远程办公 居家办公 初夏征文

Go 语言入门很简单:Go 实现凯撒密码

宇宙之一粟

密码学 Go 语言 7月月更

【Python技能树共建】Beautiful Soup

梦想橡皮擦

Python 7月月更

EventBridge 在 SaaS 企业集成领域的探索与实践

阿里巴巴云原生

阿里云 云原生 SaaS 事件总线

Spring Cloud Alibaba 2.2.8 版本发布与社区未来规划介绍

阿里巴巴云原生

阿里云 云原生 spring cloud alibaba

到底什么才是DaaS数据即服务?别再被其他DaaS概念给误导了

雨果

DaaS数据即服务

JDBC 进阶

武师叔

7月月更

函数计算异步任务能力介绍 - 任务触发去重

阿里巴巴云原生

阿里云 Serverless 云原生 函数计算

毕业总结

michael

架构实战营 #架构实战营 「架构实战营」

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