微信背后不为人知的一场巨变:他们如何「把大象搬进冰箱」?( 二 )
前面压测出现问题 , 就出现在换轮子的过程中 。
实际上 , 轮子也确实到了该换的时候了 , StephenLiu说:
2014年微信只是一个部门 。 当时公司提了这么一个成本优化的想法的时候 , 我们自己还挺紧张的 , 因为当时部门的人不是很多 , 当时只是一个部门 , 那个时候也就三四百号人 。 在2014年之前 , 微信所有的人力都扑在做功能迭代 , 不断打磨新的功能 , 所以对于后台的服务器用得怎么样 , 包括架构做得怎么样 , 对这些关注得比较少 。
那公司又有这个要求 , 后来公司就安排了人对每个业务部门去看做得怎么样 , 最后选派了非常有经验的人 。 像当时带队的也是公司的VP , 反正我非常有印象 , 因为我被他批了很多次 。 就说微信这边的成本非常高 , 你们服务器用得不好 。

文章图片
▲微信曾经的报告PPT
这次降本增效的要求促使了微信团队第一次进行服务器架构的优化 , 当时采用了名为YARD的系统架构 。
但是这次自研上云则需要和腾讯公司保持一致 , 采用开源的K8S系统架构 , 相比于YARD , K8S架构更为开放 , 在适配人工智能和大数据框架等等方面有先天优势 。 而现在微信的诸多功能都与人工智能和大数据有关 , 比如语音转文字 , 还有文字翻译功能 。
或者说 , 2014年微信采用YARD架构目的很简单 , 就是帮助灵活调度服务器资源 , 节省成本 , 并未考虑更复杂更长远 , 而当时K8S也没有开源 。
随着业务发展时间前行 , K8S架构的优势逐渐盖过架构迁移的阵痛 , 又恰逢腾讯业务变革 , 这场改变势在必行 。

文章图片
微信基础架构工程师EdselWang告诉爱范儿微信自研上云的宏观步骤:
对于微信团队来说 , 上云可以分成狭义和广义两个层面 。 狭义的上云就是2018年930变革 , 公司930变革之后公司推动了自研上云这件事情 , 然后微信开始使用公司提供的统一的云基础设施 。 广义上上云 , 就是微信把整个研发模式逐渐云原生化 , 这里就不单纯包括把一些后台的服务从原来的物理机搬到云上 , 当然这里还包括整个研发过程会跟云做一个结合 。
针对2018年930变革之后 , 公司推动自研上云这件事情到目前为止也是经历了两个阶段 。 第一个阶段是2018年到2020年这个时间点 , 公司主要改变了提供服务器的方式 , 就是从原来提供物理机改为CVM(CloudVirtualMachine , 云虚拟机) 。 第二个阶段的时间点是从2020年开始 , 公司进一步要求各个业务部门把内部的一些调度系统统一改为K8S , 这个对我们来说 , 就是从YARD迁移到K8S上 。 在第一个阶段 , 从原来的物理机改为使用CVM这一块 , 由于我们设计了YARD作为它的调度层 , 所以我们的主要工作是让YARD适配云 , 因为YARD原来是支持物理机的 , 现在就是YARD支持CVM虚拟机 , 而业务层是不需要做很多改变的 。
在第二个阶段 , 对于微信团队来说 , 就是要用K8S , 就是用腾讯云提供的K8S集群的调度能力替代掉自研的YARD平台 。 为了使这个迁移更加顺滑 , 我们在用K8S替代YARD过程中规划了三步走 。 第一步 , 首先要解决微信能不能上K8S跑的问题 , 那个程序能不能上去跑的问题 。 第二步是要把YARD原来积累的一些经验移植到K8S , 让K8S跟YARD原来的能力对齐 , 可以接着使用原来YARD提供的所有能力 。 第三步 , 我们要充分发挥K8S的能力 , 因为前两步YARD提供的我们都提供了 , 第三步我们就要更充分地使用K8S的能力 , 这块主要体现在成本、效率上 。
- 唉|这么又“杀”我微信了?
- 一台电脑只能登录一个微信账号?教你几个步骤轻松搞定!
- 微信现在大家每天几乎都要用到|微信三个设置按钮默认是打开的,关闭以后,缓存空间明显降低了
- 手机和微信是现在人们工作和生话中不可缺少的两样工具。|怎么利用微信把手机的文件和相片传到电脑上
- 在这信息技术飞速发展的今天|支付宝和微信的这两个隐藏功能,大家平时都没有留意而已
- 每天大家都在使用微信|微信群聊新增两个功能,一个直接@提醒多个人
- 虽然微信现在比较受人们的喜爱|如何把手机上的文件传到电脑上?
- 前几天介绍了怎么屏蔽微信某个人发的信息后|删除了微信中的好友,还能收到对方发来的信息吗?
- 微信是大家都要经常用到的社交平台|微信如何彻底关闭朋友圈入口
- 微信的用户数量日益剧增|电脑怎么双开微信windows上的方法
