• 请不要在回答技术问题时复制粘贴 AI 生成的内容
hheedat
V2EX  ›  程序员

百万英雄的技术架构大概是什么样的?

  •  1
     
  •   hheedat · Jan 8, 2018 · 8778 views
    This topic created in 3228 days ago, the information mentioned may be changed or developed.

    弹幕分区吗?

    第一题假设所有观看人数都会答题,150w 人假设都在第一秒答题,如何消化 150w qps 并且很快的统计出答题的对错数量?

    欢迎大家讨论

    proxy

    43 replies  •  2018-01-12 18:01:41 +08:00
    wangdu2012
    wangdu2012
    Jan 8, 2018 via iPhone
    1
    百万英雄是什么?
    odirus
    odirus
    Jan 8, 2018
    2
    欢迎大神靠谱的科普,我也想学习学习
    lhx2008
    lhx2008
    Jan 8, 2018 via Android
    3
    我也感觉很神奇,上百万的并发,还是视频流量,还有如此复杂的逻辑和同步性,稳定性的要求
    opengps
    opengps
    Jan 8, 2018
    4
    其实应用了一堆的技术,不过这个时候,外界能说的无非就是队列,缓存,分流之类的
    lhx2008
    lhx2008
    Jan 8, 2018 via Android
    5
    不过判断对错中间是有延迟的,不是马上判断对错,应该还是有个消化的时间
    Raidal
    Raidal
    Jan 8, 2018
    6
    同关注,类似的 app 出了一堆,太快了。
    odirus
    odirus
    Jan 8, 2018❤️1
    7
    发表一下自己的拙见

    每个人最多 10s 答题,答题后主持人通常是 15s ~ 20 s 后才发布答案

    第一题如果是 150W 人答题,30s 消化全部答题结果,使用类似阿里云的 GSLB 在全国多提供几个入口,报名参赛的时候选择就近服务器进行登录,各大节点分别统计自己的结果,然后再汇总显示,我想还是不难的,毕竟题目答案都是已知的,而不是等主持人公布答案之后再实时计算。

    不过很佩服现在的直播技术,一百多万在线的实时视频直播、弹幕直播,确实很考验技术功底。
    odirus
    odirus
    Jan 8, 2018
    8
    打算明天报名参赛,然后抓包分析一下(今天没报上名)
    ssrtree
    ssrtree
    Jan 8, 2018 via Android
    9
    @odirus 有直播可以看?
    grikr
    grikr
    Jan 8, 2018 via Android
    10
    冲顶大会也差不多
    odirus
    odirus
    Jan 8, 2018
    11
    @ssrtree 额,我以前也没看过,打开头条,中间有个按钮“答题”,然后就可以看了啊,效果还做得很好的
    menc
    menc
    Jan 8, 2018
    12
    就告诉你头条的所有 APP 都是一个架构,所谓一招鲜吃遍天,就是这么吊
    swulling
    swulling
    Jan 8, 2018
    13
    这个的难点不在那个答题上,而是在百万人的直播上。
    odirus
    odirus
    Jan 8, 2018
    14
    @swulling 这个赞同,而且还要考虑直播延迟对答案提交的影响
    gamexg
    gamexg
    Jan 8, 2018
    15
    没玩过,
    答题应该不是大麻烦吧?
    答题者之间不存在交互,那么直接堆服务器就可以搞定。
    gamexg
    gamexg
    Jan 8, 2018
    16
    楼上说了,直播是难点,
    可惜不熟悉直播领域。
    valuedlute
    valuedlute
    Jan 8, 2018
    17
    内部有人写 wiki 了, 员工可以看到讨论。

    服务端技术说多不多,说少不少。
    odirus
    odirus
    Jan 8, 2018
    18
    @mickeyandkaka

    吃瓜群众表示想了解学习一下
    ByteRan
    ByteRan
    Jan 8, 2018
    19
    @mickeyandkaka

    吃瓜群众表示想了解学习一下
    hheedat
    hheedat
    OP
    Jan 8, 2018
    20
    @swulling 百万人直播很成熟了吧,我看斗鱼,panda,很多大主播明面上写的高峰人数都有几百万,推流,cdn 什么的,技术比较专,但是比较容易水平扩容?
    答题这种,汇总什么的是可行的方案,延时要求也如楼上所说,没有那么的及时。
    KgM4gLtF0shViDH3
    KgM4gLtF0shViDH3
    Jan 8, 2018 via Android
    21
    第一个这类型的出来我就知道会和直播一样火
    KgM4gLtF0shViDH3
    KgM4gLtF0shViDH3
    Jan 8, 2018 via Android
    22
    @lhx2008 斗鱼之类的好像都不止百万吧,而且还是 1080 的画质
    Nitromethane
    Nitromethane
    Jan 8, 2018
    23
    CDN 视频流+消息队列
    realpg
    realpg
    Jan 8, 2018
    24
    @bestkayle #22
    在线观看量那数字看看就好……
    swulling
    swulling
    Jan 8, 2018 via iPhone
    25
    @hheedat 谁会信那个人数…

    另外都是直播,对实时性要求不一样,技术难度也是完全不同的。
    akira
    akira
    Jan 8, 2018
    26
    @bestkayle 普通的直播站应该是有秒级的延时的
    Voren
    Voren
    Jan 8, 2018
    27
    比双 11 秒杀之类压力小多了
    上面有同学说了,答题和答案之间是有时间差的,统计起来完全没压力

    视频流这个解决方案有很多
    另外几乎所有直播的在线人数都是注水的
    liudaqi
    liudaqi
    Jan 8, 2018 via iPhone
    28
    very intersting!
    hheedat
    hheedat
    OP
    Jan 9, 2018
    29
    @Admstor
    @swulling 答题这个我个人猜测也可能有注水,官方机器人答题摊低成本
    fengchang
    fengchang
    Jan 9, 2018
    30
    主要难度还是在视频下行上。答题的话,100W 个请求虽然很多,但是基本是可以无限横向扩展的。
    Lax
    Lax
    Jan 9, 2018
    31
    最近接了几个视频直播的项目,优化延时还是可以做到比较理想的效果
    binux
    binux
    Jan 9, 2018
    32
    我不认为和普通的(斗鱼之类)直播有太大的不同。
    scnace
    scnace
    Jan 9, 2018 via Android
    33
    持续关注
    tidezyc
    tidezyc
    Jan 9, 2018 via iPhone
    34
    我要说冲顶大会答题我写的你们信不信
    gclove
    gclove
    Jan 9, 2018
    35
    没什么难度,题目和答案都是死的, 不过就是判断选项对不对.

    怎样做负载均衡都可以
    naver1
    naver1
    Jan 9, 2018
    36
    所以冲顶大会我这每次还在看题,选项就没了。。。垃圾服务器。。。
    说好的 10 秒,连 5 秒都没有
    sujin190
    sujin190
    Jan 9, 2018
    37
    这个感觉并不难吧,答案是固定的,把所有答案提前加密写到文件,用 nginx 直接返回,单机就能到百万级 qps 吧,优化的好的话,解密密钥可以提前下发好就可以了
    firefox12
    firefox12
    Jan 9, 2018 via iPhone
    38
    其实没什么难度 简单的推流就可以。百万 qps 又不是一台主机处理,结果已知,任何一个主机都可以水平扩展。百万弹幕 又不是你看到了另外一百万人的消息。最后 百万在线这个数值能确认真实吗?
    ioth
    ioth
    Jan 9, 2018
    39
    有难度吗?
    tidezyc
    tidezyc
    Jan 9, 2018 via iPhone
    40
    @DT27 #36 你用的啥手机,我可以帮你查查
    colincat
    colincat
    Jan 9, 2018
    41
    真心话,技术难度不大,同步时间可以用 socket,而答题可以采用 http nginx 负载均衡,多加点机器就好了,而且基本上只有第一题才有百万流量,主持人可以拖一会,计数也不需要太精准,因为只有内部知道到底有多少人,接下来的题答题人数会越来越少了。
    jccg90
    jccg90
    Jan 9, 2018
    42
    呃,直播技术这么成熟了,这种广播模式的直播,毫无压力啊。。。而且答题的请求,又不要求实时性,用户又没法刷新,网络超时之后还可以直接扔掉不管算答题失败,根本没有事务的问题。。。简直超级简单的
    qscqesze
    qscqesze
    Jan 12, 2018
    43
    这个东西难度又不是判题。。。推送问题和视频两个模块我猜应该是分开的。。。。而且判题应该是在服务器做的,不是在用户侧做的判题。
    当然难度是在直播,首先得要实时性,这个不像直播,直播的延时可能在几十秒都是允许接受的,但是这种答题的延时不能这么高,而且不同的手机之间延时也不能太大。
    另外直播人数,我虽然不是相关项目组的,但是人数这个应该是真的,百万的同时在线人数不注水的。

    比较一下竞品之间的表现,头条还是有实力的,这个东西也不是说说这么简单的,突然一个百万 qps 打过来,服务器稍微不注意就会被打挂。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2311 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 68ms · UTC 12:32 · PVG 20:32 · LAX 04:32 · JFK 07:32
    ♥ Do have faith in what you're doing.