专题演讲嘉宾:梅旭光

百度资深研发工程师

2016 年加入百度,目前是搜索时效性业务技术负责人,同时也负责百度搜索组件化渲染框架、服务端渲染架构的研发工作。曾发布语言转换器 ts2php、多端统一开发框架 Mars 等开源项目。毕业于天津大学,对前端框架、服务器端渲染设计和实现有较为丰富的经验。

by 梅旭光

百度
资深研发工程师

在完成搜索组件化技术改造后,使用 PHP 支撑的服务器端渲染架构已渐渐不能适应搜索前端技术的发展。随着搜索渲染架构不断演进,百度引入了 Node.js 作为单独的渲染服务,支撑了搜索移动、PC 的各个业务线,每日承接十亿级的渲染请求。 本次演讲主要分享搜索前端渲染架构的演进历程。

演讲提纲:

  1. 背景与挑战
    • 结果页每条结果使用独立模块运行容器形式进行组织,涉及到 20+ 个团队,每日上线 20 个左右的需求
    • 10 亿级的渲染服务
    • 搜索架构整体迁移:Go + Node.js
    • 大规模渲染服务架构设计与实施
  2. 架构方案介绍
    • 搜索渲染服务化:Node.js 作为一个单独的服务,全面接管搜索渲染工作
    • 多进程主从并行渲染架构:充分利用线上机器 CPU(100 核),避免卡片间相互干扰,提升性能
    • 将主模板和卡片内容分开,主模板与卡片内容并行渲染
    • 多个卡片之间进行并行渲染,单卡渲染失败不影响整页结果输出,提升稳定性
  3. 方案落地实践
    • 页面内部主模板与独立模块运行容器并行,主进程劫持机制
    • 多种前端框架,SSR 集成及性能优化
    • 主从 60+ 进程数据通讯优化,性能对比,共享内存
    • 从进程的预热,不停流预热更新方案
  4. 方案收益
    • 渲染技术的更新换代,优化服务端渲染(SSR)机制,丰富了 SAN 的技术生态
    • 前后端渲染同构
    • 优化服务端渲染耗时,提升结果页渲染的稳定性
    • 在工程化方面,业务迁移方案实践积累
    • 抽象出渲染服务,不仅可满足搜索结果页,还在持续为搜索其他业务提供服务

你将获得:

  • 学习 Node.js 在渲染服务中的实践方案
  • 大前端工程架构以及相关配套设计

 

  • 电话咨询

    联系电话:+86 13269078023
在报名过程中如有任何问题,欢迎微信扫描二维码联系我们的票务经理