写点什么

微服务过微怎么办?字节跳动提供了一种合并编译的方案|QCon

  • 2024-01-16
    北京
  • 本文字数:1424 字

    阅读完需:约 5 分钟

大小:713.65K时长:04:03
微服务过微怎么办?字节跳动提供了一种合并编译的方案|QCon

随着业务规模的迅速扩张和复杂度提升,微服务架构已逐渐成为业界普遍采纳的先进策略。然而,在长期实践与演进的过程中,微服务粒度过细的现象日益突出,带来了种种问题,比如微服务分割过细导致的基础资源配置开销加剧,交互过程中链路增多引起的时延上升问题,以及服务治理开销过大等等。因此,当前针对单体架构与微服务架构的选择这一议题,又在经历着新一轮的审视与论证。

 

那么,有没有一种方案,可以既拥有单体的性能,又拥有微服务的研发效率呢?

 

字节跳动基础架构团队提供了一种方案——合并编译的方案,通过这种方式,可以使得服务拥有单体的性能和微服务的研发效率。目前该方案已在字节跳动内部多个业务线中使用,接入核心超过百万核,在不影响研发效率的情况下,带来数十万核的性能收益。

 

QCon全球软件开发大会(北京站)2024 的「单体 vs 微服务」专场,字节跳动后端研发工程师尹旭然将以《大规模微服务破局之道:合并编译》为题,把方案落地经验分享出来。据了解,尹老师主要负责合并编译方向和开源 HTTP 框架 CloudWeGo-Hertz 的研发,主要关注后端服务架构与技术。目前合并编译是字节跳动解决微服务过微问题上的主要解决方案之一,Hertz 也是字节跳动内部最大的 HTTP 框架。



我们不希望你错过这个演讲,因为——

  • 这个方案是业界已经大规模落地的,微服务过微的治理方案之一,在落地过程中有较多的经验,摸着前人的肩膀过河,机会难得

  • 核心负责人亲临现场,你既能听到方案的详细情况,又能与他面对面交流,互相启发新的思路,探索下一代后端服务架构

  • 通过这个方案,你会知道,单体和微服务并不是绝对的,服务可以灵活的选择单独部署与合并部署

 

尹旭然老师也表示,方案落地也不是没有痛点,一是理念普及是最大的难点,需要让业务的同学接受这种形态,了解哪些是真正的需求,哪些是不需要关注的点,二是相关生态(DevOps、监控、服务网格、PaaS 等)都需要支持,牵涉部门多。但这些问题都不是无解的,在交流过程中,尹老师分享了他们的做法。

 

“在业务接受上,我们主要有两个动作。第一点是自上而下的宣传,我在内部的平台上发表了很多文章,也有很多的分享,通过多次触达,让用户慢慢地理解这个事情。宣传的时候鼓励用户从更高维度的视角来看,跳出微服务的思维。合并之后就是一个单体服务,单体需要的哪些能力和微服务肯定是不一样的。第二点,我们也会用一些例子,找一些核心服务,在明白了这种架构形态之后接入,为我们做一些背书。随着核心服务接入的越来越多,业务接受起来也变得更加容易。第三点是打铁还须自身硬,合并编译听了很多业务的建议,对业务提到的能力也能够做到快速的补齐,慢慢的口碑也就上来了。”

 

目前,该方案在业务侧得到了正向反馈,“大家都能够明白这件事情带来的收益,也明白接入后研发模式带来的变化。尤其是收益这方面,取得了超出预期的收益,大家的反馈普遍还是非常不错的。”


此外,QCon 全球软件开发大会(北京站)将作为 InfoQ 2024 年首场会议,推出了全新主题——全面进化,并围绕着技术、产品、组织的全面进化策划了大模型场景化落地、大模型产品设计、大模型推理加速、高质量架构、单体 vs 微服务、可观测、性能优化、下一代生产力工具、开源产品的商业闭环、最新编程语言、数据质量与治理、大前端前沿技术、自研 OS 时代的大终端等超多精彩专题。全年会议 7 折特惠购票,仅限 1 月,咨询购票可联系票务经理 17310043226 。


目前大会议题同步征集中,点击此处了解详情,期待与各位开发者现场交流。



2024-01-16 17:3240702

评论

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

观测云入选 CNCF 云原生全景图

观测云

开源一夏 | 使用 JavaScript 和 CSS 的简单图像放大镜

海拥(haiyong.site)

开源 8月月更

如何搭建知识库,让您的内容更丰富?

Geek_da0866

接口测试中,应不应该用数据库

和牛

8月月更

怎么学自动化测试

和牛

自动化 软件测试 8月月更

分享几个自动化测试的练手项目

和牛

自动化 软件测试 8月月更

怎么设计产品手册?用什么设计产品手册?

Baklib

烟雾、空气质量、温湿度...自己徒手做个环境检测设备

华为云开发者联盟

开发 传感器 环境监测

一张图快速了解 Istio 的 EnvoyFilter

万猫学社

云原生 istio envoy

阿里面试官最新分享的Java面试宝典,含8大核心内容讲解

Java工程师

Java 面试 offer

在Istio中,到底怎么获取 Envoy 访问日志?

万猫学社

云原生 istio envoy

【荣耀智慧服务】快捷服务开发指南

荣耀开发者服务平台

开发者 App 手机 荣耀 honor

app自动化测试webview怎么操作

和牛

自动化 软件测试 8月月更

直播预告|从新手村到魔王城,高效默契的敏捷团队如何炼成

观测云

开源生态与AI芯片的碰撞&Dragonfly基于P2P的镜像加速系统 | 第 39-40 期

OpenAnolis小助手

开源 dragonfly p2p 龙蜥社区 AI 芯片

干货:服务器网卡组技术原理与实践

C++后台开发

服务器 交换机 网卡 C/C++后台开发 C/C++开发

SpringBoot+Vue+Flowable,模拟一个请假审批流程!

江南一点雨

Java spring springboot flowable

Python命令行输出彩色字符串

和牛

Python 8月月更

自助服务知识库是什么?

Geek_da0866

web技术支持| 基于vue3实现自己的组件库第三章:Checkbox组件

anyRTC开发者

Vue Web 音视频 WebRTC Checkbox组件

开源一夏 |Spring MVC深度学习

叶秋学长

spring 开源 8月月更

不爱生活的段子手不是好设计师|ONES 人物

万事ONES

常用持续集成工具对比

和牛

软件测试 8月月更

阿里总部最新分享SpringCloud 生态全栈笔记,涵盖了五大核心组件,太强了!

Java工程师

Java spring spring-cloud

8月Meetup | “数据调度+分析引擎”解锁企业数字化转型之路

白鲸开源

一种新的测试方法:视觉感知测试

和牛

软件测试 8月月更

requests库访问接口

和牛

测试 8月月更

Colocate Join :ClickHouse的一种高性能分布式join查询模型

华为云开发者联盟

数据库 后端

异形屏为led显示行业带来更多希望

Dylan

LED显示屏 led显示屏厂家 异形屏

聊聊云原生数据平台

观远数据

开源 云原生 8月月更

微服务过微怎么办?字节跳动提供了一种合并编译的方案|QCon_字节跳动_QCon全球软件开发大会_InfoQ精选文章