字节各类业务拥有众多用户群,作为字节前端性能监控 SDK,自身若存在性能问题,则会影响到数以亿计的真实用户的体验。所以此类 SDK 自身的性能在设计之初,就必须达到一个非常极致的水准。 与此同时,随着业务不断迭代,功能变得越来越多,对监控的需求也会变得越来越多。例如,今天 A 业务更新了架构,想要自定义性能指标的获取规则,明天 B 业务接入了微前端框架,需要监控子应用的性能。在解决这些业务需求的同时,我们会不断加入额外的判断逻辑、配置项。同时由于用户的电脑性能、浏览器环境的不同,我们又要解决各种兼容性问题,加入 polyfill 等代码,不可避免地造成 SDK 体积膨胀,性能劣化。那么我们是如何在需求和功能不断迭代的情况下,持续追踪和优化 SDK 的体积和性能的呢?
“ DDD设计的目标是关注领域模型而并非技术来创建更好的软件,假设开发人员构建了一个SQL,并将它传递给基础设施层中的某个查询服务然后根据表数据的结构集取出所需信息,最后将这些信息提供给构造函数或者Factory,开发人员在做这一切的时候早已不把模型看做重点了,这个整个过程就变成了数据处理的风格 ”——摘 Eric Evans《领域驱动设计》 《领域驱动设计》中的Repository(下面将用仓储表示)层实际上是极具有挑战性的,对于它的理解,也十分重要。本文大部分内容都在众多前辈理论基础上,从一个崭新的领域视觉开始探索,并结合自己的实践感悟进行细致的解析。同时本文不仅仅是DDD前辈的搬运工,也创新提出了仓储实体转移的概念,可以提供给读者思考是否在自己场景中可以用到这种模式。即使读者也对仓储有很深的了解,我也觉得本文会对你有新的阅读体验。
VLDB 会议,全称 International Conference on Very Large Data Bases,是全球数据库系统领域最负盛名的三大顶会之一。从 1975 年开始举办,每年一次,全球各地顶尖高校的大量研究者、各大高科技公司都会将自己的学术研究进展或工业界成果以论文形式投递到 VLDB 组委会,而组委会会审阅并接收其中最前沿、最具影响力的一批,并召开线下会议,供论文作者们分享、交流。 今年的 VLDB 在 9 月 5 日到 9 日,在澳大利亚悉尼举办。作为在全球有广泛用户和海量数据挑战的字节跳动公司,有三篇论文被 VLDB 接收:其中两篇来自 Graph 团队 ,一篇 ByteHTAP 系统,应 VLDB 组委会邀请,字节相关团队来到了正值早春的悉尼,与来自世界各地的数据领域专家学者,分享交流,共襄盛举。 为了让大家能对 VLDB 2022 有个快速的了解,我们总结了 VLDB 的论文分类、研究趋势以及工业界重点论文的摘要,当然啦,也包括字节跳动三篇论文简介。本文抛砖引玉,如果想深入了解学习,还是非常建议找到论文原文来仔细研究一番。
继 2019 年开源 Midway 框架之后,阿里一直在 Node.js 的前沿进行深度研究,除了加入 TC39 参与标准化建设,向上游 Node.js 项目持续贡献,与龙蜥社区合作优化之外,也在 Serverless 领域有了不小的成果。 今天,向大家介绍我们最新的面向云原生场景,面向 Serverless 架构下的新产品, 代号 Noslate。
在正式开始介绍第一部分的内容之前,先给大家展示一组关键词。2020 年初 Hertz 立项,2020 年 10 月,Hertz 发布第一个可用版本。2022 年 6 月,Hertz 正式开源。 截至目前,Hertz 在字节内部已经支撑超过 1.4 万个业务服务,日峰值 QPS 超过 5000 万。 Hertz 不仅支撑业务服务,同时还会横向支撑字节内部的各种基础组件,包括但不限于字节跳动服务网格控制面、公司级别压测平台以及 FaaS,还包括各种业务网关等等。Hertz 的高性能和极强的稳定性可以支撑业务复杂多变的场景。在公司内部 Hertz 接替了大量基于 Gin 框架开发的存量服务,大幅度降低了业务资源使用成本以及服务延时,助力公司层面的降本增效。
在互联网信息爆炸的今天,推荐系统是我们身边一个无法躲避的存在。在淘宝上浏览商品,在抖音上刷视频,以及无处不在的广告等等。本文探讨闲鱼商品推荐系统的同时,结合所面临的多推荐场景工程维护任务重、算法模型优化难以自动辐射多场景的痛点,介绍如何构建通用的推荐中台。
这是阿里云块存储团队内部的一次新人培训材料,内容源自老同学们的踩坑经验,总结成案例和方法分享公示,实践和方法论不限于分布式系统,希望对读者有启发。本文主要包括以下三个方面: 编码习惯(开发、测试、Review,Bad/Good Case) 研发流程(源码控制、每日构建、缺陷管理) 实践方法(效率工具、新人踩雷、学习推荐)