V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
yuan46720
V2EX  ›  程序员

大企业级应用架构什么的是啥玩意

  •  
  •   yuan46720 · 2 天前 · 2848 次点击

    已经干了大于 5 年的开发了,前端后端都弄过,写的都是后台管理系统,大屏啥的,或一些节日微信小活动,对于传统行业企业的复杂业务和互联网企业的高访问量场景都没写过没见过, 可以聊下真实高并发和复杂业务的难点和解决经验 只提出场景问题也行,因为没遇到过,连想象都想象不到

    24 条回复    2026-01-21 11:41:47 +08:00
    peteretep
        1
    peteretep  
       2 天前
    1 、用户有 1 亿
    2 、页面查询名字带“张伟”的人

    你怎么设计后端服务?
    realpg
        2
    realpg  
    PRO
       2 天前
    给自己做的系统的所有接口加 10000QPS 的模拟负载 24 小时添加 生产环境也添加 就 curl 外部调用就行
    看看能不能扛过一个工作日
    4seasons
        3
    4seasons  
       2 天前
    实际上 99%的企业都遇不到,大部分遇到了,也只是因为测试心血来潮,给 request 循环写了个 9999999 。
    aqqwiyth
        4
    aqqwiyth  
       2 天前
    说下你能接触到的衣食住行

    支付场景: 每秒 1w 个用户生成付款二维码
    支付场景: 每秒 1w 个用户发送给银行扣款,1% 几率的银行接口超时处理
    ...
    滴滴出行: 每秒 1w 个用户(不同位置)发起打车
    滴滴出行: 每秒 1w 个车主上报车辆位置
    ...
    midsolo
        5
    midsolo  
       2 天前
    电商-交易业务线,10 年老项目重构。

    交易业务线中的 "收付、核算、核销、对账、结算" 这几个核心业务,一共有 70 多万行的存储过程,项目文档不全,SQL 注释很少,数据量最大的表有 17 亿条记录,字段最多的表有 490 个字段,现在要使用 OOAD + DDD 的方式进行系统重构。

    你来设计一个方案?
    ZGame
        6
    ZGame  
       2 天前
    @peteretep 才一亿 直接查!
    peteretep
        7
    peteretep  
       2 天前
    @ZGame #6 今天面试就到这里吧,领导今天不在,等他回来通知你
    firefox12
        8
    firefox12  
       1 天前
    其实你去 也摸不到这些设计,我也没看到那个新人来就让他设计整个架构的。 就算挖来的人 也做不了这个,因为原来比如 tx 的系统 拿过来也没办法用,要把现在这个扔掉。扔掉 其实是个业务取舍。

    一般来说 网上大部分的大规模项目 都能用, 分流 缓存 mq 分库 一把所下来就差不多了。大家愁的是没这么大的业务请求,现在的大部分架构 加几个机器就可以了。
    KingHL
        9
    KingHL  
       1 天前
    @midsolo 你说的是真实案例吗,还是自己编的
    litchinn
        10
    litchinn  
       1 天前
    一致性,顺序性
    由于要提高系统的吞吐量,你开始使用分布式,由于高可用,你开始搭建集群
    然后你面临着各种各样的问题,你先下了一笔订单,然后很短时间内想取消它,但是系统告诉你订单找不到,那么就产生了很多可能,两笔订单被分给不同的节点,它们数据还未同步,也有可能在经过前期验证处理后,取消订单被先于下单送达执行节点,但此时根本没有这个单子,所以找不到

    为了解决这些问题你开始尝试使用一些解决方案,包括但不限于这里提及的一些内容 https://aeron.io/docs/distributed-systems-basics/logical-clocks/

    但这些技术又引入了更多的复杂性,你开始陷入一个泥潭,头发狂掉
    killva4624
        11
    killva4624  
       1 天前
    从抽象的角度上说,应用架构上就是找到当前存在瓶颈以及不能横向扩容的地方,然后做加速和拆分,以及应急预案;
    比如读写分离,增加读请求的吞吐量;
    比如存储分离,把用户数据分表、文件分架分区,用增加复杂度来增加可横向扩展性;
    剩下的就是扩容扩容扩容扩容扩容扩容扩容扩容,裁撤裁撤裁撤裁撤裁撤裁撤裁撤裁撤裁撤,限速限速限速限速限速限速限速限速限速限速限速限速...
    midsolo
        12
    midsolo  
       1 天前
    @KingHL 真实的,把存储过程翻译成代码就花了整整 9 个月,目前已经重构了 2 年。
    midsolo
        13
    midsolo  
       1 天前
    @KingHL 有 7 张表的数据量达到了 10 亿条以上,比如交易流水表、收款表等,如果数据只是 append only ,那么 MySQL 单表存 10 亿条数据没什么压力。

    craftsmanship
        14
    craftsmanship  
       1 天前 via Android
    @midsolo 太 NB 了 居然真的有勇气重构。。
    KingHL
        15
    KingHL  
       1 天前
    @midsolo 我搞了很多年电商交易相关业务,这种场景我还是真没见过(这么多字段的表,和这么多的存储过程使用,只在某些银行业务听说过),数据量的话对电商场景来说并不算大,十年前电商交易架构已经比较成熟了,非常好奇为什么迭代成这种现状,方便的话可以再介绍下
    JYii
        16
    JYii  
       1 天前
    @midsolo #13 这量级为嘛没拆出来呢,表结构估计一点不敢动吧,只增不改不减是吧,加个索引 DBA 要疯
    aqqwiyth
        17
    aqqwiyth  
       1 天前
    @midsolo 阿里去 IOE 都是历史书上的事情了。 你们是那个大厂
    midsolo
        18
    midsolo  
       1 天前
    @KingHL #15 @JYii @aqqwiyth 跨境的,不要问我为什么要这样设计,我也不知道,我入职后看到的就是个这样的项目,很久才缓过劲来。
    JYii
        19
    JYii  
       1 天前
    @midsolo #18 理解。我接触的业务量级勉强到亿级,你司又让我对 MySQL 刮目相看。再有面试问 MySQL 性能的就应该抽他,表结构不好,sql 写的不好,怪人家 MySQL 。
    midsolo
        20
    midsolo  
       1 天前   ❤️ 1
    @JYii #19 运维能力强,DBA 团队给力,表也设计的好,1 个联合索引覆盖了 70% 的查询,2 个单独的索引抗住 30% 的查询,剩下的就是堆机器了。
    songyoucai
        21
    songyoucai  
       1 天前
    用户两千万, 要发营销短信,就这一个场景,你试试。
    ktskts
        22
    ktskts  
       1 天前
    感觉你问的是技术架构,不是应用架构啊。按照 4A 理论,应用架构承接业务架构,好像跟你说的不在一个层面上
    wangzr
        23
    wangzr  
       5 小时 4 分钟前
    举个例子,2000w 的五福卡,要求秒级全发出去(别管合不合理)
    prosgtsr
        24
    prosgtsr  
       3 小时 30 分钟前
    2L 说的比较方便你开始落地实操
    就是给你项目来压测就完事了,先模拟一下你的 qps 翻十倍,抗住了再翻十倍试试。。。
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   5267 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 07:12 · PVG 15:12 · LAX 23:12 · JFK 02:12
    ♥ Do have faith in what you're doing.