Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >今日头条技术剖析

今日头条技术剖析

作者头像
架构师小秘圈
发布于 2018-04-02 09:13:14
发布于 2018-04-02 09:13:14
2.4K0
举报
文章被收录于专栏:架构师小秘圈架构师小秘圈

作者:杜江 来自:21CTO(21cto.com)社区创始人。多年架构与管理经验, 原赶集网创始工程师,正和岛CTO以及今日头条今日特卖技术负责人。

今日头条创立于2012年3月,到目前仅4年时间。从十几个工程师开始研发,到上百人,再到200余人。产品线由内涵段子,到今日头条,今日特卖,今日电影等产品线。

一、产品背景

今日头条是为用户提供个性化资讯客户端。下面就和大家分享一下当前今日头条的数据(据内部与公开数据综合):

  • 5亿注册用户

2014年5月1.5亿,2015年5月3亿,2016年5月份为5亿。几乎为成倍增长。

  • 日活4800万用户

2014年为1000万日活,2015年为3000万日活。

  • 日均5亿PV

5亿文章浏览,视频为1亿。页面请求量超过30亿次。

  • 用户停留时长超过65分钟以上

二、技术与架构演进

1、文章抓取与分析

我们日常产生原创新闻在1万篇左右,包括各大新闻网站和地方站,另外还有一些小说,博客等文章。这些对于工程师来讲,写个Crawler并非困难的事。

接下来,今日头条会用人工方式对敏感文章进行审核过滤。此外,今日头条头条号目前也有为数不少的原创文章加入到了内容遴选队列中。

接下来我们会对文章进行文本分析,比如分类,标签、主题抽取,按文章或新闻所在地区,热度,权重等计算。

2、用户建模

当用户开始使用今日头条后,对用户动作的日志进行实时分析。使用的工具如下:

- Scribe

- Flume

- Kafka

我们对用户的兴趣进行挖掘,会对用户的每个动作进行学习。主要使用:

- Hadoop

- Storm

产生的用户模型数据和大部分架构一样,保存在MySQL/MongoDB(读写分离)以及Memcache/Redis中。

随着用户量的不断扩展大,用户模型处理的机器集群数量较大。2015年前为7000台左右。其中,用户推荐模型包括以下维度:

1 用户订阅

2 标签

3 部分文章打散推送

此时,需要每时每刻做推荐。

3、新用户的“冷启动”

今日头条会通过用户使用的手机,操作系统,版本等“识别”。另外,比如用户通过社交帐号登录,如新浪微博,头条会对其好友,粉丝,微博内容及转发、评论等维度进行对用户做初步“画像”。

分析用户的主要参数如下:

- 关注、粉丝关系

- 关系

- 用户标签

除了手机硬件,今日头条还会对用户安装的APP进行分析。例如机型和APP结合分析,用小米,用三星的和用苹果的不同,另外还有用户浏览器的书签。头条会实时捕捉用户对APP频道的动作。另外还包括用户订阅的频道,比如电影,段子,商品等。

4、推荐系统

推荐系统,也称推荐引擎。它是今日头条技术架构的核心部分。包括自动推荐与半自动推荐系统两种类型:

1 自动推荐系统

- 自动候选

- 自动匹配用户,如用户地址定位,抽取用户信息

- 自动生成推送任务

这时需要高效率,大并发的推送系统,上亿的用户都要收到。

2 半自动推荐系统

- 自动选择候选文章

- 根据用户站内外动作

头条的频道,在技术侧划分的包括分类频道、兴趣标签频道、关键词频道、文本分析等,这些都分成相对独立的开发团队。目前已经有300+个分类器,仍在不断增加新的用户模型,原来的用户模型不用撤消,仍然发挥作用。

在还没有推出头条号时,内容主要是抓取其它平台的文章,然后去重,一年几百万级,并不太大。主要是用户动作日志收集,兴趣收集,用户模型收集。

资讯App的技术指标,比如屏幕滑动,用户是不是对一篇都看完,停留时间等都需要我们特别关注。

5、数据存储

今日头条使用MySQL或Mongo持久化存储+Memched(Redis),分了很多库(一个大内存库),亦尝试使用了SSD的产品。

今日头条的图片存储,直接放在数据库中,分布式保存文件,读取的时候采用CDN。

6、消息推送

消息推送,对于用户: 及时获取信息。对运营来讲,能够 提⾼⽤用户活跃度。比如在今日头条推送后能够提升20%左右的DAU,如果没有推送,会影响10%左右 DAU(2015年数据)。

推送后要关注的ROI:点击率,点击量。能够监测到App卸载和推送禁用数量。

今日头条推送的主要内容包括突发与热点咨讯,有人评论回复,站外好友注册加入。

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

- 频率个性化

- 内容个性化

- 地域

- 兴趣

比如:

按照城市:辽宁朝阳发生的某个新闻事件,发给朝阳本地的用户。

按照兴趣:比如京东收购一号店,发给互联网兴趣的用户。

推送平台的工具和选择,需要具备如下的标准:

- 通道,首先速度要快,但是要可控,可靠,并且节省资源

- 推送的速度要快,有不同维度的策略支持,可跟踪,开发接口要友好

- 推送运营的后台,反馈也要快,包括时效性,热度,工具操作方便

- 对于运营侧,清晰是否确定推荐,包括推送的文案处理

因此,推送后台应该提供日报,完整的数据后台,提供A/B Test方案支持。

推送系统一部分使用自有IDC,在发送量特别大,消耗带宽较严重。可以使用类似阿里云的服务,可有效节省成本。

7、延展思考

现在很多客户端都会需要推荐技术,比如电商、旅游类的商品推荐,也可以有娱乐头条、健康头条、体育头条等类似的应用,这些产品在技术侧的实现,包括用户,模型,数据都是相通的。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2017-12-31,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 架构师小秘圈 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
《网页制作的前沿趋势:创新与卓越》
在当今快速发展的互联网时代,网页制作始终处于不断进化的状态。以下是一些当前备受关注的热点话题:
程序员阿伟
2024/12/09
1530
《探索网页制作新趋势:打造极致用户体验》
在当今数字化时代,网页制作已经成为了一项至关重要的技能。随着互联网的不断发展,用户对于网页的要求也越来越高。如何打造一个吸引人、功能强大且用户体验极佳的网页,成为了众多开发者和设计师关注的热点话题。
程序员阿伟
2024/12/09
1440
2018最佳网页设计:就是要你灵感爆棚!!!
2018已然过半,网页设计涌现了一些新的设计趋势,例如破碎网格设计,动态或不规则文字排版设计,流体特效应用等。也同时延续着2017和2016,甚至更早的网页设计趋势,例如简约风设计,扁平化设计,响应式设计,视觉滚动差设计,单页以及全屏视频背景设计等等。
奔跑的小鹿
2019/01/24
1.8K0
2018最佳网页设计:就是要你灵感爆棚!!!
干货!2018年你值得一看的网页设计作品集赏析
网页设计作品集对网页设计师而言,既是网页门面,也是个人专业素养的体现。那么在作品集设计上万不能掉以轻心。无论是制作一份简约大方还是极具表现力的精良作品集,设计师们都必须付出十分的努力,参阅大量的设计作品,获得灵感。
奔跑的小鹿
2019/01/24
2K0
干货!2018年你值得一看的网页设计作品集赏析
【附案例】UI交互设计不会做?设计大神带你开启动效灵感之路
随着网络技术的创新发展,如今UI交互设计应用越来越广泛,显然已经成为设计的主流及流行的必然趋势。UI界面交互设计中的动效包括移动,滑块,悬停效果,GIF动画等。UI界面交互设计为何越来越受到青睐?它有哪些优势呢?
奔跑的小鹿
2019/01/24
1.2K0
【附案例】UI交互设计不会做?设计大神带你开启动效灵感之路
网页设计的发展趋势
进入到互联网时代,我们可以看到网站是变得越来越多。在激烈的市场竞争中,独特的、有创意的、个性化的网页已经成为吸引用户的一个主要原因,网站的长远发展一定要重视设计网页。只有站在用户的角度来考虑问题,才可以带来非常好的用户体验,只有吸引用户的网站才是优秀的网站。
华专网络
2023/04/06
6170
网页设计的发展趋势
统一原则 在网页设计当中的运用
形式美法则是人类在创造美的形式和过程中对美的形式规律的总结概括,世间万物的美都可以用形式美法则来概括。在平面构成中也有形式美法则:统一和变化,对称和平衡,节奏和韵律,对比和调和。前面跟大家有分享了对比、留白在网页当中的运用,今天我们继续来分享网页当中那么多元素是如何做到统一一致的。
宇相
2018/08/06
1.1K0
统一原则 在网页设计当中的运用
你知道了吗?2015年网页设计的9大趋势
其实在此之前已经有很多小伙伴翻译或总结过类似文章来分析优秀网页设计的趋势,不过我还是希望我总结的东西能更宏观一点并为大家带来一些新的东西。 稍后看官们可能会觉得我说的这几点可能你们都见过或者自己也在一些项目中运用起来,没错,没见过就不叫趋势, 哈哈!而将这些东西进行总结然后运用在自己今后的设计中,这样我们才能紧跟潮流并逐渐引领潮流,否则将只是走马观花。 我们通过几个网站以及看官记忆中的网站一起探索吧,虽是管中窥豹,但趋势可见一斑! 一、平面设计在网页设计中的崛起 以前我们可能会觉得平面设计和网页设计以及UI
wangxl
2018/03/07
2K0
你知道了吗?2015年网页设计的9大趋势
跟随这10个趋势,你可以在2018年设计出出众的网页
年底最后一个月是总结头一年,思考和展望下一年的月份。经过2017年一整年的沉淀和总结,在最近的这些设计作品,重设计甚至小幅度的设计改版中,窥见一些即将在2018年流行开来的设计趋势。在网页设计上,这些设计趋势将会深刻地影响着设计师们接下来的设计方向。
宇相
2018/08/06
6070
跟随这10个趋势,你可以在2018年设计出出众的网页
《C++开发 AR 游戏:开启未来娱乐新潮流》
在当今科技飞速发展的时代,增强现实(AR)技术正以惊人的速度改变着我们的生活和娱乐方式。从智能手机上的 AR 滤镜到沉浸式的 AR 游戏,这项技术的应用越来越广泛。而在众多编程语言中,C++以其高效、强大的性能在 AR 游戏开发领域占据着重要地位。本文将深入探讨 C++开发 AR 游戏的热门趋势,带你领略这一创新领域的魅力。
程序员阿伟
2024/12/09
1810
绿色低碳的大趋势下,品牌们都在做哪些努力?
如今,低碳生活越来越成为一种社会共识,“绿色”二字已经成为一种潮流。可持续消费的理念与产业的高质量发展相契合,尤其体现在可循环、可回收、对环境无害化消费。中国争取于2030年前达到碳峰值,努力争取2060年前实现碳中和。
氖天科技
2022/09/23
4150
绿色低碳的大趋势下,品牌们都在做哪些努力?
创意网页排版设计和教程分享,打造 “视”不可挡的网页设计
网页中超过95%以上的信息都是通过文字的形式呈现。 然而,页面文字并非毫无章法的随意呈现。事实上,更具可读性、视觉效果以及独特排版和布局的网页文本设计,更能吸引用户,提升用户愉悦度。这也是为什么越来越多的设计师日益重视网页排版设计的重要原因。
奔跑的小鹿
2019/01/24
1.9K0
创意网页排版设计和教程分享,打造 “视”不可挡的网页设计
web学习到底学什么?
很多同学都会问在web前端开发,需要学习什么东西?难不难?多久能入门?学习多久能建好一个网站?毕业之后工资能拿到多少?重庆IT培训来为大家讲解一下: Web前端工程师是协调前端工程师、后端程序员实现网
企鹅号小编
2018/03/01
1.1K0
web学习到底学什么?
网页设计需要注意什么?详解网页设计的8大注意事项
一个合理的布局和清晰的网页可以让访问者感到舒适,并愿意花时间去了解更多的内容,网页设计的设计风格、色彩、页面层次、实用性、交互性、兼容性以及SEO布局等方面,企业在进行网页设计前都是需要考虑的。接下来小编跟你详细分享这8大网页设计注意事项,一起来看看吧。
优化猩
2023/02/27
8210
网页设计需要注意什么?详解网页设计的8大注意事项
灵感专题—2019年优秀网页设计作品赏析#4月
设计领域时时刻刻在发生着你我意想不到的变化。许多看似熟悉的设计趋势,于不同的设计师而言,经过灵活的创意设计也许就意味着不同的可能性。而这些可能性则来源于设计灵感的持续涌现。及时汲取设计灵感,是设计师们创作优秀网页的秘密武器之一。
奔跑的小鹿
2019/06/14
1.9K0
灵感专题—2019年优秀网页设计作品赏析#4月
业界 | 让环境适应人类:百度展示AI时代的交互设计
百度自 2010 年开始布局 AI 技术,先后开展了自然语言处理、计算机视觉、机器学习、数据挖掘、知识图谱等 AI 技术的研发,随后开始探讨 AI 可能对人们生活产生的影响。百度认为,AI 的发展和人类的进化非常相似,而「重构」是伴随 AI 发展最重要的事。
机器之心
2018/07/26
4320
业界 | 让环境适应人类:百度展示AI时代的交互设计
中小企业网页设计,轻松拓展网络市场
网络时代,无论是资金雄厚的大型企业,还是各方面资源相对匮乏的中小企业,在线网站的设计和搭建,对于挖掘和开拓市场,创造更多商机,树立深入人心的企业品牌形象,都发挥着至关重要的作用。
奔跑的小鹿
2019/01/24
1.3K0
中小企业网页设计,轻松拓展网络市场
[新] 2020年最佳移动应用UI设计趋势
译者:Winterbure / Violet 原文:Django Stars
用户5009027
2020/06/19
8020
[新] 2020年最佳移动应用UI设计趋势
《Dreamweaver CS6 完全自学教程》笔记 第一章:网页制作基础知识
Web 也就是 www,是 World Wide Web 的缩写,也叫做万维网,是目前最流行、最方便的 Internet 信息服务。
全栈程序员站长
2022/09/27
8210
《Dreamweaver CS6 完全自学教程》笔记 第一章:网页制作基础知识
超全面总结!2017年UI设计领域流行过这21个设计趋势
1、功能性极简主义 不少移动端APP和网站开始基于极简主义设计风来设计,而极简主义本身并非关注所有的信息,而是通过减少非关键信息来突出特定的内容,它是有着极强的功能性和偏向的。它有着如下的特征: 简
前朝楚水
2018/04/04
8700
超全面总结!2017年UI设计领域流行过这21个设计趋势
推荐阅读
相关推荐
《网页制作的前沿趋势:创新与卓越》
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档