飞轮|数据驱动 x 敏捷开发,字节是如何践行这两大技术理念的( 六 )


【飞轮|数据驱动 x 敏捷开发,字节是如何践行这两大技术理念的】第三 , 是在线/离线的混部 。 因为这么大的规模 , 成本自然也很大 , 所以我们要做好利用率的提升 。 在线/离线的混部是非常重要的手段 。 特别是字节跳动业务本身 , 其实波峰和波谷都很明显 。 比如抖音高的峰值就在晚上 , 其他时候的QPS就没有这么高 。 所以我们设计了一套在线/离线混部的机制 , 一方面可以降低成本 , 一方面能够更好地应对极端情况下业务规模增长的难题 。
同时 , 在底层 , 我们还构建了一个容器+多云的整体解决方案 。
在多云方面 , 我们不仅计算能够做到多云 , 有状态的存储也能够做到多云 , 这样我们就能够非常灵活的去应对各种的突发情况 , 比如年初的春晚抢红包 , 以及818新潮购物节等等 。

飞轮|数据驱动 x 敏捷开发,字节是如何践行这两大技术理念的
文章图片

这张图从架构体系角度 , 进一步来阐释全栈云原生的体系结构 。
首先在最底层 , 是一套完整的云原生基础设施 。 通过统一的底层去提供新一代的高性能计算存储和网络的解决方案 , 这其实是保证业务稳定和敏捷的基石 。
在云原生基础之上是服务平台层 , 它要解决的是业务开发中的一些通用平台和服务能力的抽象 。 这里面包含了高性能的微服务框架、基于服务网格的微服务治理能力 , 以及Serverless、边缘计算平台的能力 。 服务平台构建就是为了让开发人员更敏捷、专注地开发业务逻辑 , 而能更少地考虑资源、平台、服务间通信和治理 。
在平台层之上是整个研发体系的构建 。 这一层我们是希望通过各种各样的工具、流程机制和组织 , 能够去帮字节跳动灵活地支撑全部业务线的快速开发和开发管理工作 。
这中间三层设施的两边是重要的云原生安全体系和SRE服务支撑体系 。
第一个是云原生安全的体系 。 那么相比传统的安全体系 , 它要做到不同层次的延伸 , 一个是左延 , 不仅关注运行时的安全 , 我们也需要和DevOps的流程结合在一起 , 去关注应用整个生命周期的安全 。 第二个就是下延 , 不仅只关注到容器的安全 , 还要关注到主机的安全 。
第二个就是SRE体系 , 它来支撑整个业务高速发展过程中的稳定性 。
因为时间有限 , 我挑了两个比较有意思的话题来进一步的分享 。 一个是微服务 , 一个是移动开发 。 一方面比较有代表性 , 另一方面这两者覆盖了大部分业务研发的场景 。
服务器端——微服务、服务治理与DevOps

飞轮|数据驱动 x 敏捷开发,字节是如何践行这两大技术理念的
文章图片

首先来看微服务 。 我们可以用四个点来形容字节跳动微服务的现状:

推荐阅读