V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ppllss
V2EX  ›  程序员

大多数人一辈子都接触不到淘宝双 11 流量冲击?那么我们怎么去锻炼这样的能力?

  •  
  •   ppllss · 2022-01-25 12:13:38 +08:00 · 8802 次点击
    这是一个创建于 794 天前的主题,其中的信息可能已经有所发展或是发生改变。

    很多时候我在想,在写业务的我,怎么去提升自己,我毫不犹豫的回答自己那就是庞大的用户基数和每时每刻数以万计的流量产生。

    但是我们会遇到吗?也许(肯定)一辈子都遇不到吧。

    平时去实践都是写一个 demo ,更别谈数据量了

    比如我们把用户基数划为几个等级

    1. < 100
    2. < 1 万
    3. < 10 万
    4. < 100 万
    5. < 1000 万
    6. < 1 亿
    7. < 10 亿

    我相信你没有接触过更高等级的用户基数,你可能会忽略这方面的可能会采到坑,比如代码,表设计,中间使用等等。。

    无论我们怎么去模拟和实践,我相信现实问题,永远比你模拟的问题更加出乎意料。

    我也不是怂恿大家一定去大厂

    我只是觉得大家要接受一个平凡自己罢了。

    56 条回复    2022-01-26 14:11:53 +08:00
    pupboss
        1
    pupboss  
       2022-01-25 12:16:54 +08:00   ❤️ 20
    接触到又能怎么样呢? 5 年前研究出来的方案已经很成熟了,现在只要做好流量预估,各种预案,按照图纸施工就行,也挺平凡的
    julyclyde
        2
    julyclyde  
       2022-01-25 13:04:44 +08:00   ❤️ 17
    既然都遇不到,何必要锻炼呢?
    murmur
        3
    murmur  
       2022-01-25 13:05:38 +08:00
    淘宝已经觉悟了,双十一搞得大家都不爽,现在是从 10 月促销到 12 月,说明技术钻牛角尖还得用业务化解
    Building
        4
    Building  
       2022-01-25 13:07:04 +08:00 via iPhone
    不可以模拟吗?
    Mirage09
        5
    Mirage09  
       2022-01-25 13:09:29 +08:00
    这种能力也就是在面试的时候画虎烂罢了…
    Thresh
        6
    Thresh  
       2022-01-25 13:11:42 +08:00
    @pupboss 说的对。我是感受过的
    xunxuntj
        7
    xunxuntj  
       2022-01-25 13:21:04 +08:00
    人生苦短,用在有意义的事情上
    没有目标的精益求精,就是内卷
    MacDows
        8
    MacDows  
       2022-01-25 13:22:26 +08:00 via Android
    为什么要假定一件不会遇到的事情呢
    hyq
        9
    hyq  
       2022-01-25 13:30:18 +08:00   ❤️ 65
    根据我的经验总结,只需要牢记一些常识就行:
    1. mysql 的 tps 你就按 5000 算,每秒超过 5000 请求,直接用 myql 肯定不行
    2. 单机 redis 的 qps 可以到 100k ,把一些数据 /缓存,存到 redis ,能有效提高并发
    3. 利用消息队列实现削峰,实现生产与消费的解耦
    4. 保证处理逻辑可以并行,可以扩展,谨慎使用锁
    5. 尽量将服务做成无状态可扩展的,把状态扔给 redis 或者其他高效的存储
    hyq
        10
    hyq  
       2022-01-25 13:32:15 +08:00   ❤️ 1
    6. 对于频繁访问的数据一定要做缓存,然后去解决缓存的雪崩,穿透,失效等问题
    totoro52
        11
    totoro52  
       2022-01-25 13:35:02 +08:00   ❤️ 3
    又被公众号洗脑了?
    lscho
        12
    lscho  
       2022-01-25 13:35:57 +08:00
    遇不到为什么要锻炼呢?很多能力都是在解决问题的时候积累的。遇不到问题,只锻炼是不行的。
    shyrock
        13
    shyrock  
       2022-01-25 13:39:10 +08:00
    屠龙之术,习之何用
    js8510
        14
    js8510  
       2022-01-25 13:56:49 +08:00
    10 亿以上用户的的服务也有很多啊。。。google.com, facebook.com. IG. Twitter, amazon.com ....

    service scale 大了以后,却是有很多问题是之前无法想象的。。举个几个简单又常见的两个小问题:
    1 ) 很多大型服务开发周期长,参与的团队太多,时间久了,executable 太大了以后会造成很多困难。比如 compiler overflow ,OOM 等等。
    2 ) 有时候遇到一些 bug 会很难复现。比如你有 100k 台机器的时候每天都有一两台有相同的 crash stacktrace. 你明明每天都看的到,但是因为 1/100k 太小了。logging sampling 往往没有那么凑巧可以抓到。结果就是往往每个大型服务都有一些长期修不好的东西。
    sadfQED2
        15
    sadfQED2  
       2022-01-25 13:57:15 +08:00 via Android   ❤️ 7
    😂😂别觉得这么大的流量用户量有多牛逼,你接触以后可以会感叹,这屎山代码居然还能跑起来,还没挂
    utyyyreee
        16
    utyyyreee  
       2022-01-25 13:57:46 +08:00
    中国人不骗中国人 😁
    wonderfulcxm
        17
    wonderfulcxm  
       2022-01-25 13:59:18 +08:00 via iPhone
    不锻炼,就用 ab 测试一下
    CoderGeek
        18
    CoderGeek  
       2022-01-25 13:59:43 +08:00   ❤️ 1
    经历 6 次了 不想加班 - - 想回家好好睡觉
    cat9life
        19
    cat9life  
       2022-01-25 14:14:07 +08:00
    各自媒体吹的太猛了 仿佛“抵御”了双 11 。我们就是全球第一
    jones2000
        20
    jones2000  
       2022-01-25 14:33:55 +08:00   ❤️ 1
    这个不需要锻炼, 砸钱买机器加带宽不就完事了。只要构架不太傻,支持分布式,剩下的就是钱的问题了。没钱再高的能力也没用。
    Remember
        21
    Remember  
       2022-01-25 14:46:44 +08:00   ❤️ 4
    @sadfQED2 人类的本质是草台班子。参考上次 fb 宕机事故,不挂掉都没人知道几十亿用户的公司基础架构脆的跟纸一样。
    newmlp
        22
    newmlp  
       2022-01-25 14:56:05 +08:00   ❤️ 6
    大多数人一辈子也娶不到林志玲,怎么能锻炼这种和女神相处的经验
    SGTeam
        23
    SGTeam  
       2022-01-25 15:00:56 +08:00
    工人共情资本家的,纯粹就是贱的难受
    onikage
        24
    onikage  
       2022-01-25 15:09:13 +08:00
    虽然我是个搞 java 的, 但是一直不喜欢 java 主流的这种唯高并发大后端的导向.
    我喜欢的是小而美的, 比如写个能切实用上的小工具之类的.
    0o0O0o0O0o
        25
    0o0O0o0O0o  
       2022-01-25 15:13:55 +08:00 via iPhone
    我也经常想能接触到就好了,不是为了别人也不是为了钱,就是觉得自己的水平和那个量级好遥远好遥远
    whypool
        26
    whypool  
       2022-01-25 15:25:03 +08:00 via Android   ❤️ 1
    业务化解
    所以就不要搞什么秒杀,抢购什么的
    直接送!
    hello2090
        27
    hello2090  
       2022-01-25 15:39:02 +08:00 via iPhone
    工作了 10 几年还是用户<100 的水平,还好工资到位了,得过且过吧
    murmur
        28
    murmur  
       2022-01-25 15:41:43 +08:00   ❤️ 1
    @js8510 技术不够可以业务凑,有的时候拟一套霸王条款和赔偿预案比 99.99 稳定管事

    网易炉石一个机房全炸了一套赔偿下来玩家直喊爹

    腾讯么,东西挂了就挂了,反正你找不到客服
    CallMeReznov
        29
    CallMeReznov  
       2022-01-25 15:45:32 +08:00   ❤️ 8
    一身屠龙技,来穿杀猪衣.
    世间无凤凰,菜市来修鸡.

    横批:差不多得了.
    cnkuner
        30
    cnkuner  
       2022-01-25 15:49:36 +08:00
    大部分楼房都是 100 米以下的,每年那么多人考证干嘛?图纸调出来改改外立面不就得了。
    ipwx
        31
    ipwx  
       2022-01-25 15:53:58 +08:00
    屠龙之术,习之何用
    liuawei
        32
    liuawei  
       2022-01-25 17:02:34 +08:00
    没见过的人还是想看一下那么大的并发量是怎么支撑的吧。
    x86
        33
    x86  
       2022-01-25 17:04:59 +08:00
    这不就是面试造飞机,上班拧螺丝
    hejw19970413
        34
    hejw19970413  
       2022-01-25 17:06:09 +08:00
    流量尽可能不要出现峰值,一切无事就是最好的事。
    vance123
        35
    vance123  
       2022-01-25 17:25:56 +08:00
    我是一个建筑师,我一直在学习如何设计一个鸟巢级别的建筑。虽然我的老板一直骂我吃饱了没事干,但我相信,有一天他接到鸟巢单子的时候会想起我的
    RainCats
        36
    RainCats  
       2022-01-25 17:26:16 +08:00
    作为一个彩笔 Javaer ,目前认为除了面试可以被面试官鄙视以外,所谓高并发没有任何作用,方案都有,无非是缓存、数据库分库分表、MQ 、集群巴拉巴拉,方案现成的一大堆
    aguesuka
        37
    aguesuka  
       2022-01-25 17:28:19 +08:00
    写协议, 比如用 bt 协议 Sybil Attack 自己
    chaodada
        38
    chaodada  
       2022-01-25 17:30:07 +08:00   ❤️ 1
    别觉得这么大的流量用户量有多牛逼,你接触以后可以会感叹,这屎山代码居然还能跑起来,还没挂
    thetbw
        39
    thetbw  
       2022-01-25 17:34:21 +08:00
    自己没接触过什么大的流量,说一下我之前的同事吧,他现在在一个移动的外包,刚开始连数据结构都不晓得,代码各种脱裤子放屁,不过服务器用的 oracle,开发是 java,感觉完全就是靠服务器堆起来的。我现在公司服务器因为内存不足都有过几次事故了,再怎么优化估计效果都不大。
    lycpang
        40
    lycpang  
       2022-01-25 19:14:32 +08:00
    我现在就在你说的那种亿级流量的顶流公司。。。但是这玩意都是基础服务。。也就那么几个核心人员负责那玩意。。。平时的开发基本用不到。双十一双十二都是提前准备的,有各种预案,压测啥的。压测 2wqps ,上不去就加机器。。。
    lycpang
        41
    lycpang  
       2022-01-25 19:16:07 +08:00
    @lycpang 技术可能学不到什么,但是你的缺点会被流量放大 N 倍。。所以做事就要格外的谨慎。
    adoal
        42
    adoal  
       2022-01-25 19:25:37 +08:00 via iPhone
    好好解决你自己业务场景中遇到的实际技术问题,多总结,多思考,学会解耦和抽象,提高面向业务的通用架构设计能力,培养技术品位和技术审美。
    eason1874
        43
    eason1874  
       2022-01-25 19:28:06 +08:00   ❤️ 1
    当你需要一个人解决双 11 这样大的流量,你的年收入起码千万,不如先考虑一下每年上千万收入该怎么花才能花得有意义
    auxox
        44
    auxox  
       2022-01-25 20:35:03 +08:00
    加压模拟呗
    mademing3322
        45
    mademing3322  
       2022-01-25 21:20:55 +08:00
    技术里比高并发有意思且有更有挑战的事情多了去了,钻这牛角尖干啥,再说了,只要把横向扩展方案设计好,这就是堆机器的事
    swsh007
        46
    swsh007  
       2022-01-25 21:34:21 +08:00 via Android   ❤️ 3
    硬件行业的核心是堆数量
    软件行业的核心是堆 buffer
    levelworm
        47
    levelworm  
       2022-01-25 21:54:46 +08:00
    你想办法让自己变得有些价值,比如说去阿里云或者腾讯云上搞个有一定流量的服务,然后故意不买他们的盾服务,再请人去黑产网站上喊一嗓子,让大家都来 DDOS 你,就可以锻炼到了。
    verihy
        48
    verihy  
       2022-01-25 22:49:56 +08:00
    流量不够,你把集群资源限制得狠一些就行了,最后落到单机上很多问题都是相似的。
    liuxu
        49
    liuxu  
       2022-01-25 22:58:40 +08:00 via Android
    把你的站发到隔壁 loc ,200k/s cc 满足你的愿望
    ch2
        50
    ch2  
       2022-01-25 23:09:07 +08:00
    首先你得有足够的机器,要不然只能一辈子单机,单机是开发不出来高并发的系统的
    proxychains
        51
    proxychains  
       2022-01-25 23:32:39 +08:00   ❤️ 2
    发帖:大家好我新购了 64C128G 50G 高防小鸡,求打
    nicebird
        52
    nicebird  
       2022-01-26 10:16:22 +08:00
    接触不到,说明需求不大,那就不用太在意。
    NeoZephyr
        53
    NeoZephyr  
       2022-01-26 10:16:26 +08:00
    @Remember 他们是源码泄漏了还是咋地,你就知道了
    pkoukk
        54
    pkoukk  
       2022-01-26 10:39:47 +08:00
    楼上+N ,只要你支持横向拓展,就是加机器的事儿
    只要你机器够预算够,Mysql 内存开到 500G ,有的场景下 redis 都可以不用
    gugugu233
        55
    gugugu233  
       2022-01-26 11:09:51 +08:00
    喜欢提升自己的话,可以去研习研习其他门槛低的屠龙技,比如编译原理、图形学什么的(手动狗头
    diseng
        56
    diseng  
       2022-01-26 14:11:53 +08:00
    软件行业是最缺乏规范的一个行业。金融业、建筑业、医疗行业都有非常多的规范,必须安全国家或者全球的规范来做事。随着软件行业越来越成为社会运转的基础设施,我相信在不久的将来,至少国家层面会出台软件行业的一系列规范,要求那些成为国家社会运转基础设施的软件供应商去满足这些规范,否则就要整改。

    就算国家不出台规范,只要成为了基础设施的软件自身出现了故障,公司内部也会制定各种规则制度,国家把这些规则制度再抽象一下,也就成了国家的规范。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5373 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 08:36 · PVG 16:36 · LAX 01:36 · JFK 04:36
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.