弹幕分区吗?
第一题假设所有观看人数都会答题,150w 人假设都在第一秒答题,如何消化 150w qps 并且很快的统计出答题的对错数量?
欢迎大家讨论
1
wangdu2012 2018-01-08 21:47:38 +08:00 via iPhone
百万英雄是什么?
|
2
odirus 2018-01-08 21:48:54 +08:00
欢迎大神靠谱的科普,我也想学习学习
|
3
lhx2008 2018-01-08 21:50:58 +08:00 via Android
我也感觉很神奇,上百万的并发,还是视频流量,还有如此复杂的逻辑和同步性,稳定性的要求
|
4
opengps 2018-01-08 21:52:42 +08:00
其实应用了一堆的技术,不过这个时候,外界能说的无非就是队列,缓存,分流之类的
|
5
lhx2008 2018-01-08 21:54:28 +08:00 via Android
不过判断对错中间是有延迟的,不是马上判断对错,应该还是有个消化的时间
|
6
Raidal 2018-01-08 22:05:37 +08:00
同关注,类似的 app 出了一堆,太快了。
|
7
odirus 2018-01-08 22:34:12 +08:00 1
发表一下自己的拙见
每个人最多 10s 答题,答题后主持人通常是 15s ~ 20 s 后才发布答案 第一题如果是 150W 人答题,30s 消化全部答题结果,使用类似阿里云的 GSLB 在全国多提供几个入口,报名参赛的时候选择就近服务器进行登录,各大节点分别统计自己的结果,然后再汇总显示,我想还是不难的,毕竟题目答案都是已知的,而不是等主持人公布答案之后再实时计算。 不过很佩服现在的直播技术,一百多万在线的实时视频直播、弹幕直播,确实很考验技术功底。 |
8
odirus 2018-01-08 22:35:54 +08:00
打算明天报名参赛,然后抓包分析一下(今天没报上名)
|
10
grikr 2018-01-08 22:41:54 +08:00 via Android
冲顶大会也差不多
|
12
menc 2018-01-08 22:42:59 +08:00
就告诉你头条的所有 APP 都是一个架构,所谓一招鲜吃遍天,就是这么吊
|
13
swulling 2018-01-08 22:45:08 +08:00
这个的难点不在那个答题上,而是在百万人的直播上。
|
15
gamexg 2018-01-08 22:52:18 +08:00
没玩过,
答题应该不是大麻烦吧? 答题者之间不存在交互,那么直接堆服务器就可以搞定。 |
16
gamexg 2018-01-08 22:53:23 +08:00
楼上说了,直播是难点,
可惜不熟悉直播领域。 |
17
mickeyandkaka 2018-01-08 22:53:24 +08:00
内部有人写 wiki 了, 员工可以看到讨论。
服务端技术说多不多,说少不少。 |
18
odirus 2018-01-08 22:55:05 +08:00
|
19
tanranran 2018-01-08 23:01:25 +08:00
|
20
hheedat OP @swulling 百万人直播很成熟了吧,我看斗鱼,panda,很多大主播明面上写的高峰人数都有几百万,推流,cdn 什么的,技术比较专,但是比较容易水平扩容?
答题这种,汇总什么的是可行的方案,延时要求也如楼上所说,没有那么的及时。 |
21
KgM4gLtF0shViDH3 2018-01-08 23:08:14 +08:00 via Android
第一个这类型的出来我就知道会和直播一样火
|
22
KgM4gLtF0shViDH3 2018-01-08 23:10:24 +08:00 via Android
@lhx2008 斗鱼之类的好像都不止百万吧,而且还是 1080 的画质
|
23
Nitromethane 2018-01-08 23:26:01 +08:00
CDN 视频流+消息队列
|
27
Admstor 2018-01-08 23:45:17 +08:00
比双 11 秒杀之类压力小多了
上面有同学说了,答题和答案之间是有时间差的,统计起来完全没压力 视频流这个解决方案有很多 另外几乎所有直播的在线人数都是注水的 |
28
liudaqi 2018-01-08 23:55:14 +08:00 via iPhone
very intersting!
|
30
fengchang 2018-01-09 00:13:22 +08:00
主要难度还是在视频下行上。答题的话,100W 个请求虽然很多,但是基本是可以无限横向扩展的。
|
31
Lax 2018-01-09 01:18:06 +08:00
最近接了几个视频直播的项目,优化延时还是可以做到比较理想的效果
|
32
binux 2018-01-09 01:32:54 +08:00
我不认为和普通的(斗鱼之类)直播有太大的不同。
|
33
scnace 2018-01-09 02:14:36 +08:00 via Android
持续关注
|
34
tidezyc 2018-01-09 02:25:17 +08:00 via iPhone
我要说冲顶大会答题我写的你们信不信
|
35
gclove 2018-01-09 03:17:25 +08:00
没什么难度,题目和答案都是死的, 不过就是判断选项对不对.
怎样做负载均衡都可以 |
36
DT27 2018-01-09 08:37:45 +08:00
所以冲顶大会我这每次还在看题,选项就没了。。。垃圾服务器。。。
说好的 10 秒,连 5 秒都没有 |
37
sujin190 2018-01-09 09:59:19 +08:00
这个感觉并不难吧,答案是固定的,把所有答案提前加密写到文件,用 nginx 直接返回,单机就能到百万级 qps 吧,优化的好的话,解密密钥可以提前下发好就可以了
|
38
firefox12 2018-01-09 10:15:57 +08:00 via iPhone
其实没什么难度 简单的推流就可以。百万 qps 又不是一台主机处理,结果已知,任何一个主机都可以水平扩展。百万弹幕 又不是你看到了另外一百万人的消息。最后 百万在线这个数值能确认真实吗?
|
39
ioth 2018-01-09 11:07:26 +08:00
有难度吗?
|
41
colincat 2018-01-09 13:48:20 +08:00
真心话,技术难度不大,同步时间可以用 socket,而答题可以采用 http nginx 负载均衡,多加点机器就好了,而且基本上只有第一题才有百万流量,主持人可以拖一会,计数也不需要太精准,因为只有内部知道到底有多少人,接下来的题答题人数会越来越少了。
|
42
jccg90 2018-01-09 14:41:12 +08:00
呃,直播技术这么成熟了,这种广播模式的直播,毫无压力啊。。。而且答题的请求,又不要求实时性,用户又没法刷新,网络超时之后还可以直接扔掉不管算答题失败,根本没有事务的问题。。。简直超级简单的
|
43
qscqesze 2018-01-12 18:01:41 +08:00
这个东西难度又不是判题。。。推送问题和视频两个模块我猜应该是分开的。。。。而且判题应该是在服务器做的,不是在用户侧做的判题。
当然难度是在直播,首先得要实时性,这个不像直播,直播的延时可能在几十秒都是允许接受的,但是这种答题的延时不能这么高,而且不同的手机之间延时也不能太大。 另外直播人数,我虽然不是相关项目组的,但是人数这个应该是真的,百万的同时在线人数不注水的。 比较一下竞品之间的表现,头条还是有实力的,这个东西也不是说说这么简单的,突然一个百万 qps 打过来,服务器稍微不注意就会被打挂。 |