今日头条技术架构到底有多牛?( 二 )


  在头条,推送也是个性化:

  • 频率个性化
  • 内容个性化
  • 地域
  • 兴趣
比如:
  按照城市:辽宁朝阳发生的某个新闻事件,发给朝阳本地的用户 。
  按照兴趣:比如京东收购一号店,发给互联网兴趣的用户 。
  推送平台的工具和选择,需要具备如下的标准:
  • 通道,首先速度要快,但是要可控,可靠,并且节省资源
  • 推送的速度要快,有不同维度的策略支持,可跟踪,开发接口要友好
  • 推送运营的后台,反馈也要快,包括时效性,热度,工具操作方便
  • 对于运营侧,清晰是否确定推荐,包括推送的文案处理
  因此,推送后台应该提供日报,完整的数据后台,提供A/B Test方案支持 。
  推送系统一部分使用自有IDC,在发送量特别大,消耗带宽较严重 。可以使用类似阿里云的服务,可有效节省成本 。
二、今日头条系统架构
今日头条技术架构到底有多牛?

文章插图
 

今日头条技术架构到底有多牛?

文章插图
 

今日头条技术架构到底有多牛?

文章插图
 

今日头条技术架构到底有多牛?

文章插图
 
三、头条微服务架构  今日头条通过拆分子系统,大的应用拆成小应用,抽象通用层做代码复用 。
今日头条技术架构到底有多牛?

文章插图
 
系统的分层比较典型 。重点在基础设施,希望通过基础设施提高快速迭代、容灾和一系列的工作,希望各个业务团队能更快做业务上的迭代以及架构上的调整 。
四、今日头条的虚拟化PaaS平台规划
通过三层实现,通过 PaaS 平台统一管理 。提供通用 SaaS 服务,同时提供通用的 App 执行引擎 。最底层是 IaaS 层 。
  IaaS 管理所有的机器,把公有云整合起来,头条有一些热点事件会全国推广推送,对网络带宽比较高,我们借助公有云,需要哪一种类型计算资源,统一抽象起来 。基础设施结合服务化的思路,比如日志,监控等等功能,业务不需要关注细节就可以享受到基础设施提供的能力 。
五、总结
今日头条重要的部分在于:
数据生成与采集
数据传输 。Kafka做消息总线连接在线和离线系统 。
数据入库 。数据仓库、ETL(抽取转换加载)
数据计算 。数据仓库中的数据表如何能被高效的查询很关键,因为这会直接关系到数据分析的效率 。常见的查询引擎可以归到三个模式中,Batch 类、MPP 类、Cube 类,头条在 3 种模式上都有所应用 。




推荐阅读