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

SO 只用了 9 台 Web 服务器

  •  
  •   bmpidev2019 ·
    PRO
    ·
    madawei2699 · Nov 22, 2021 · 14263 views
    This topic created in 1809 days ago, the information mentioned may be changed or developed.
    stackexchange.com/performance

    StackOverflow (全球排名 188 )每月几亿的 PV (每月 55TB 网络流量),只需要 9 台 Web 服务器( RAM 64GB ),4 台数据库服务器。不过开销最大的还是用了 3 台 ES ( RAM 196G )。

    技术栈是 C#(.Net),还是挺强的。
    96 replies  •  2021-11-23 19:59:21 +08:00
    felixcode
    felixcode
    PRO
    Nov 22, 2021❤️4
    1
    不用 java ,这能算企业级应用吗?
    狗头;)
    Remember
    Remember
    Nov 22, 2021❤️1
    2
    主要是 cdn 的功劳吧。
    matrix1010
    matrix1010
    Nov 22, 2021❤️12
    3
    再告诉你个挺强的。Instagram 被 Facebook 收购时只有 7 个员工,还是用 Python/Django 写的。月活没几亿至少也几千万
    matrix1010
    matrix1010
    Nov 22, 2021
    4
    @matrix1010 记错了,包括创始人 13 个
    salmon5
    salmon5
    Nov 22, 2021
    5
    用了 java 后,服务器翻翻
    pigspy
    pigspy
    Nov 22, 2021
    6
    但是访问 StackOverflow 还是有点慢,不知道是我的网络原因还是服务器的原因
    CodeCodeStudy
    CodeCodeStudy
    Nov 22, 2021
    7
    相对于公司收入,这点服务器开支算不了什么吧
    makelove
    makelove
    Nov 22, 2021
    8
    有些网站的架构就是流量大,技术含量很一般,比如上面的 instagram
    eason1874
    eason1874
    Nov 22, 2021
    9
    300 REQ /S
    Peak: 450 req /s

    每秒请求数这么低吗,包括静态内容?
    bmpidev2019
    bmpidev2019
    OP
    PRO
    Nov 22, 2021 via iPhone
    10
    @eason1874 平均啊,一个月几亿 PV ,平摊到秒也就几百。很多高并发系统只是为了应对秒杀场景。
    locoz
    locoz
    Nov 22, 2021 via Android
    11
    很合理。基本都是静态内容,大部分人也只是看内容而已,主要靠 CDN 扛就行了。
    matrix1010
    matrix1010
    Nov 22, 2021
    12
    @makelove 不要只看到技术,我想表达的是在十年前,一个高流量且比较复杂的 App 只要 13 个人就能完成开发。而反观国内创业公司,很多没有 Instagram 复杂和流量的公司却至少 4 ,50 人
    sujin190
    sujin190
    Nov 22, 2021
    13
    不是我说,这已经 2021 年了,大站点每日内部外部各种请求调用的都奔着万亿级去了,小站点依然受益于各种基础设施的进步,9 台那么大内存的 web 服务器处理每月几亿 pv 绰绰有余了吧,你说每月处理数百亿 pv 我感觉都能信了
    dangyuluo
    dangyuluo
    Nov 22, 2021
    14
    9 台后端服务器,每个月几个 million 的 CDN 账单(夸张)
    eason1874
    eason1874
    Nov 22, 2021
    15
    @bmpidev2019 我的意思是,这个数据是指全部请求还是有效请求?全部请求应该不止,有一些傻缺爬虫,几个 IP 就能带来几十并发,疯狂请求,不拉黑它们都不停下来

    有效请求 300 REQ /S 倒不奇怪。看来他们是只统计了能通过防火墙的流量,被挡出去的不计入
    BrettD
    BrettD
    Nov 22, 2021 via iPad
    16
    @pigspy 海外访问是秒开
    westoy
    westoy
    Nov 22, 2021❤️2
    17
    @matrix1010

    业务简单而且迭代慢啊
    我 05 年靠一台单核 P4 都能撑几十万 PV
    早期 douban 用一台双核 amd 撑了几百万 PV 一天的时候洪博士还去 quixote 的邮件列表 show 了下
    当时互联网还有个改版魔咒, 业务大改都很慎重的
    后来 chrome 拖着 firefox 开始刷版本号,PM 成为了一个独立职业, 感觉整个行业基本都奔着快速迭代快速试错和大而全去了
    bmpidev2019
    bmpidev2019
    OP
    PRO
    Nov 22, 2021 via iPhone
    18
    @eason1874 我算了下感觉应该是有效用户请求,之前我做了一个爬 ins 的垃圾站,峰值爬虫一天五十万请求,是实际用户请求的十倍多,我很多时间在处理爬虫请求。
    SuperManNoPain
    SuperManNoPain
    Nov 22, 2021
    19
    语言有两种,一种被人黑的,一种没人用的😅
    bmpidev2019
    bmpidev2019
    OP
    PRO
    Nov 22, 2021 via iPhone
    20
    @bmpidev2019 当时一个月大概 1T 的网络流量,三台 1 核 1g 的服务器,几乎没啥负荷。
    lostberryzz
    lostberryzz
    Nov 22, 2021
    21
    因为这公司业务相对简单,读多写少,访问量不能说明什么,现在 app 时代,pv 多少也不重要了,更何况 alexa 排名也不高 orz
    ytmsdy
    ytmsdy
    Nov 22, 2021
    22
    其实相较于现在的服务器性能,很多完全够用的。
    根本没有到需要压榨性能的地步。
    跑得慢,绝大多数都是因为写的不好!
    matrix1010
    matrix1010
    Nov 22, 2021
    23
    @westoy 好奇去查了查洪博士,创立的爱因互动连官网都打不开了。豆瓣也是难以找到合理的盈利模式。挺感慨
    ColinWei
    ColinWei
    Nov 22, 2021❤️25
    24
    大言不惭的人真多,承认别人优秀这么难吗
    mytsing520
    mytsing520
    PRO
    Nov 22, 2021
    25
    看了一下,感觉大部分请求都被 CDN 吃掉了,由 HA 把请求分布到 web 服务器,实际到网站侧压力极低,而不是说他这个架构能吃得下那么多
    icyalala
    icyalala
    Nov 22, 2021
    26
    WhatsApp 被收购时,全部工程师只有 32 个,那可是亿级月活的 IM 服务,服务端 Erlang 。
    技术强终究还是看人。
    12101111
    12101111
    Nov 22, 2021
    27
    @eason1874 stackexchange 家族的网站不需要爬虫, 有直接提供数据下载的地方
    https://meta.stackoverflow.com/questions/295508/download-stack-overflow-database
    F281M6Dh8DXpD1g2
    F281M6Dh8DXpD1g2
    Nov 22, 2021
    28
    @matrix1010 你想多了,月活百万的时候他们就扛不住被 fb 收购了
    matrix1010
    matrix1010
    Nov 22, 2021
    29
    @liprais 你的依据是什么?这是 2012 年 4 月 13 日的新闻,每天新用户超过 100 万。而 facebook 宣布收购 ins 是 4 月 9 号,时间差不多。https://techcrunch.com/2012/04/13/instagrams-user-count-now-at-40-million-saw-10-million-new-users-in-last-10-days/
    wanguorui123
    wanguorui123
    Nov 22, 2021
    30
    主要还是看架构
    CallMeReznov
    CallMeReznov
    Nov 22, 2021❤️1
    31
    我记得谁之前说过,除了 CDN 分摊了压力之外,游客和注册会员游览的数据也是分开的.
    未注册的游客游览的数据全是隔几分钟才更新一次的静态帖子,只有注册用户才是最新的即时帖子.
    QingXuJiaZhi
    QingXuJiaZhi
    Nov 22, 2021
    32
    @liprais 不是服务器扛不住,而是因为实在给得太多扛不住。当时 Twitter 开价 5 亿美元想收购 Ins ,Ins 就犹犹豫豫只是考虑,过了没多久 Facebook 一出价就是 10 亿美元,而且口头承诺不干预 Ins 的发展,让 Ins 可以继续自己管理公司,如此优厚的条件,实在太难拒绝。
    janxin
    janxin
    Nov 22, 2021
    34
    @icyalala 确实,人的水平决定了架构与技术能否被充分压榨
    F281M6Dh8DXpD1g2
    F281M6Dh8DXpD1g2
    Nov 22, 2021
    35
    @cmdOptionKana ..."月活百万的时候他们就扛不住(很快)被 fb 收购了 "
    lidongyooo
    lidongyooo
    Nov 22, 2021❤️30
    36
    进来之前还以为 SO 是啥呢,不输全称是为了键盘的寿命着想吗?佛了。。。
    qW7bo2FbzbC0
    qW7bo2FbzbC0
    Nov 22, 2021
    37
    ins 的 django 和 python 大概率不是外面人用的版本,应该是自己根据业务特性深度优化过的吧
    janxin
    janxin
    Nov 22, 2021
    38
    @liprais 这本书有中译本,不过这个描述好像确实没什么印象。
    janxin
    janxin
    Nov 22, 2021
    39
    @hjahgdthab750 ins 的官方博客有介绍过,可以翻一下。

    在早期还是官方版本吧,起码 FB 收购的时候应该是的。根据关于 Django 的介绍里面用的 1.3 版本,后面升级的 1.8 版本。
    kisshere
    kisshere
    Nov 22, 2021
    40
    借个楼问一句,ES 最大支持 32GB 内存,SO 家的 ES 服务器内存是 196GB ,多余的不浪费了么?
    easylee
    easylee
    Nov 22, 2021
    41
    以为你说的是 so 搜索引擎,不建议用简称啊
    thetbw
    thetbw
    Nov 22, 2021
    42
    @kisshere 你看到的那个是设置 java 的堆内存最好不超过这么大吧,可能还有堆外内存的使用
    raycool
    raycool
    Nov 22, 2021
    43
    @hjahgdthab750 当初人员那么少,应该不会再有人力深度定制
    wellsc
    wellsc
    Nov 22, 2021
    44
    当年 github 也才十几个人
    otakustay
    otakustay
    Nov 22, 2021
    45
    @pigspy #6 多数是你网络问题,这世界上比 stackoverflow 快的网站屈指可数
    yazoox
    yazoox
    Nov 22, 2021❤️1
    46
    有一说一,.net core 的技术栈,也就是国内用得少(国内都是 java ),在国外,很多公司,都是用的.net core 那一套
    lower
    lower
    Nov 22, 2021
    47
    怎么又讨论这个问题了?
    当年在知乎这个问题都讨论烂了,当时 c#阵营的人拿这个把其他阵营的怼了个遍😂
    zeni123
    zeni123
    Nov 22, 2021
    48
    450 req/s 一台服务器也可以吧
    cccssss
    cccssss
    Nov 22, 2021
    49
    SQLServer 的 1.5TB RAM 是啥意思?
    bmpidev2019
    bmpidev2019
    OP
    PRO
    Nov 22, 2021 via iPhone
    50
    @cccssss 合计 1.5T 吧,单台数据库也就几百 G ,之前我挖矿的 GPU 服务器单台都 200G 内存了
    documentzhangx66
    documentzhangx66
    Nov 22, 2021
    51
    水平问题。

    我司一个每天不到一百访问量的门户系统,使用了 6 台物理服务器,做了虚拟化,单台配置:

    128G DDR4-2933 内存,

    CPU Intel Gold 6226R * 2 ,14nm/16C32T/2.9-3.9GHz/22MB/150W

    软件产品是北方某个 90%都是小妞的公司,导致这套系统,每台服务器,CPU 长期 1%使用率,内存 78%使用率。

    你就说气不气?
    huangzxx
    huangzxx
    Nov 22, 2021
    52
    @kisshere #40
    可能一台机多个 ES 实例吧
    shayuvpn0001
    shayuvpn0001
    Nov 22, 2021
    53
    so 缺的是一个国内的产品经理,一个秒杀活动就能让 so 现出原形(还有微软)
    zhuangzhuang1988
    zhuangzhuang1988
    Nov 22, 2021
    54
    创始人 blog 上有更加细节的
    https://nickcraver.com/blog/
    bing 也是在.netcore 上的
    zhuangzhuang1988
    zhuangzhuang1988
    Nov 22, 2021
    55
    看当前数据 才厉害
    cpu 内存, 都占用得很低.
    bmpidev2019
    bmpidev2019
    OP
    PRO
    Nov 22, 2021 via iPhone
    56
    @zhuangzhuang1988 占用低的话就没必要上这么高的规格了,最好把硬件榨干才行
    gefangshuai
    gefangshuai
    Nov 22, 2021 via iPhone
    57
    @felixcode 会说人话吗
    felixcode
    felixcode
    PRO
    Nov 22, 2021
    58
    @gefangshuai
    听不懂人话吗?
    lbp0200
    lbp0200
    Nov 22, 2021❤️9
    59
    从中国派个产品经理过去,很快他们人手就不够了
    pengtdyd
    pengtdyd
    Nov 22, 2021
    60
    我觉的 StackOverflow 缺一个垃圾的产品经理,有了某些产品经理就是 10 倍的服务器也扛不住,就像 CSDN 一样再加点垃圾广告,至少还要再加 5 倍!
    billzhuang
    billzhuang
    Nov 22, 2021
    61
    @zhuangzhuang1988 这个人不是创始人吧,是工程师,另外,这几天他刚跳槽去了微软。
    billzhuang
    billzhuang
    Nov 22, 2021
    62
    @zhuangzhuang1988 查了下,是 Architecture Lead
    sunhelter
    sunhelter
    Nov 22, 2021
    63
    StackOverflow 是很强啊,Dapper 就是他们开源出来的,轻量 ORM 效率王者级别的存在。
    dexterzzz
    dexterzzz
    Nov 22, 2021❤️3
    64
    StackOverflow 数据库使用,400 亿的数据
    https://www.tarynpivots.com/post/migrating-40tb-sql-server-database/
    zhuangzhuang1988
    zhuangzhuang1988
    Nov 22, 2021
    65
    @billzhuang 好吧。
    eclipselu
    eclipselu
    Nov 23, 2021❤️1
    66
    @westoy lol quixote 回忆杀,自己那会刚毕业用的第一个 web framework 。不好意思跑题鸡蛋里挑骨头一下:好像是叫洪教授
    JudyHal
    JudyHal
    Nov 23, 2021❤️3
    67
    不知道要说多少次才能唤醒大家,这些只是正常不能再正常的数据,中国被 Java 这种玩意毒害太深,以至于都忘了程序员到底能跑多快了,现在除了中国已经没有任何一个国家用 Java 和 Go 了
    fanshaohua
    fanshaohua
    Nov 23, 2021 via Android
    68
    @yazoox 我们公司就是主力.net core ,不太要求性能的用 Python...
    dayeye2006199
    dayeye2006199
    Nov 23, 2021❤️11
    69
    我觉得有一个点大家都关注的很少 - 国外很多创业公司或者小企业,能够以很精简的人员和技术架构,做十分巨大的业务量(不是简单的以峰值 QPS 之类来衡量,而是能做实在的影响很多人工作生活的产品);在有了钱和业务量之后,这类公司也没有一味的盲目扩张人员和做不同的业务,而是依然保持了这个精简做事的方法,继续做自己擅长的事情。

    在技术方面,很多公司写的介绍技术方案的博客都十分的朴素,解决方案在国内看来甚至都有些简陋。
    例如 github 介绍他们分库的方案: https://github.blog/2021-09-27-partitioning-githubs-relational-databases-scale/
    notion 价绍他们分表的方案: https://www.notion.so/blog/sharding-postgres-at-notion

    读来都语言平实,很多人看了之后都很惊讶他们现在才在做分表分库。

    这种对业务和技术比较务实的态度,追求简单但是高效达成目标的做事方法,我觉得是很值得夸赞和学习的。
    leighton
    leighton
    Nov 23, 2021❤️5
    70
    @JudyHal #67
    "现在除了中国已经没有任何一个国家用 Java 和 Go 了"
    Google Amazon: Am i a joke to you?
    hello2090
    hello2090
    Nov 23, 2021❤️1
    71
    @JudyHal 澳大利亚的 java 程序员想问问,程序员到底能跑多快? 9.15 秒?
    weizhen199
    weizhen199
    Nov 23, 2021
    72
    @JudyHal 你要是不带上 java 我可能还要犹豫 35ms
    Finest
    Finest
    Nov 23, 2021
    73
    一些人的无知言论,看了就让人想笑
    darkengine
    darkengine
    Nov 23, 2021
    74
    @JudyHal 话不要说得这么绝
    skyworker
    skyworker
    Nov 23, 2021
    75
    怎么没上微服务? 架构师不行啊
    YUCOAT
    YUCOAT
    Nov 23, 2021
    76
    他们的 APP 之所以只有几个员工,一是因为他们的产品比较简约,功能比较少,而且不用组建庞大的运营团队来逐个审查用户上传的图片是否合规。
    entersu
    entersu
    Nov 23, 2021
    77
    主要是内容检索,只要 es 索引建立的好,就不会用太多机器,存储不值钱,主要是内存和带宽
    wangyzj
    wangyzj
    Nov 23, 2021❤️2
    78
    面试官:请问你有千万并发的经验吗?
    Dockerfile
    Dockerfile
    Nov 23, 2021
    79
    @JudyHal 所以程序员到底能跑多快?和刘翔一样快么,合着 jcp google 这么好为中国开发维护 java 、go ?
    whyso
    whyso
    Nov 23, 2021
    80
    @JudyHal #67 你是来搞笑的吗?
    leeg810312
    leeg810312
    Nov 23, 2021 via Android
    81
    人家技术栈和架构设计就是好,说不过是用了这个,用了那个,这些不都是技术栈和架构的一部分吗?不喜欢别人的技术栈就不承认别人做得好,这是什么心态呢?我虽然不喜欢 go ,但我觉得 dapr 做得不错。
    penll
    penll
    Nov 23, 2021
    82
    @JudyHal 怀疑你在反向黑 c#。java 和 go 占有率,要不要这么胡诌
    fxxkgw
    fxxkgw
    Nov 23, 2021
    83
    @JudyHal 这种言论怎么会出现在这而且还有点赞。。。简直了
    raptor
    raptor
    Nov 23, 2021
    84
    以 SO 那帮人的技术,就是换成 PHP 来写,用的服务器也差不了多少。

    关键还是在人。
    Finest
    Finest
    Nov 23, 2021
    85
    语言的性能差异在业务系统中真的能忽略不计,好的设计才是关键
    wy315700
    wy315700
    Nov 23, 2021
    86
    每月几亿的 PV 其实不高

    只能说,,国内互联网的市场大于任何一个其他单一地方的市场。。。
    liuxu
    liuxu
    Nov 23, 2021
    87
    没有最强的语言,只有最强的程序员
    jerry12547
    jerry12547
    Nov 23, 2021
    88
    @fxxkgw 可能自己给自己点赞?
    ethusdt
    ethusdt
    Nov 23, 2021
    89
    虽然知道 SO 是 stackoverflow 的缩写, 不过只看标题还没敢下结论是它.

    不如下次直接叫爆栈网.
    roundgis
    roundgis
    Nov 23, 2021
    90
    SO 流量虽然比不上各大电商平台

    但是

    它对我来说有用得多。
    dexterzzz
    dexterzzz
    Nov 23, 2021
    91
    @cccssss sql server 早就已经进化到内存数据库了,和 sap hana 类似,内存列式存储表
    yc8332
    yc8332
    Nov 23, 2021
    92
    每月几亿 PV 。放国内毛毛雨吧。
    LessonOne
    LessonOne
    Nov 23, 2021
    93
    @JudyHal 为什么各大排行 Java 都是前三?
    cym1102
    cym1102
    Nov 23, 2021
    94
    全是数据库,中间件和 CDN 的功劳, 你用什么语言搞这一套都是一样的. 压力根本不在服务端语言上
    bmpidev2019
    bmpidev2019
    OP
    PRO
    Nov 23, 2021 via iPhone
    95
    @yc8332 全球排名 188 名( similar web 数据),并不是小站。
    @cym1102 的确和 web 服务关系不大,但这也有很复杂的工程问题,并不是无脑上就可以达到这种效果
    agagega
    agagega
    Nov 23, 2021
    96
    @dayeye2006199
    这也是 Ruby 在国外远比在国内流行的一个原因吧:开发效率高,强调单兵作战,有黑魔法,不好吹出花
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1343 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 142ms · UTC 19:43 · PVG 03:43 · LAX 11:43 · JFK 14:43
    ♥ Do have faith in what you're doing.