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

java21 的一波压测

  •  
  •   ebony0319 · 214 天前 · 2562 次点击
    这是一个创建于 214 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近为保障活动做了一些压测,顺便测了一下 java21. 先说下资源情况:1Pod ,2 核 2G 业务场景,从 redis 查询一个 json 然后返回,json 相对较大。

    先说下 openresty 的情况:没有请求 redis 的情况下可以到 5W ,加了了业务场景稳定在 1.2W-1.3W 样子。

    现在回到 java21 ,写法比较简单,直接用原生 HttpServer 结合虚拟线程。加入业务场景,下面是压测的数据:

    第一波没有使用虚拟线程大概 1000:

    没有使用虚拟线程


    上虚拟线程

    99.8%成功率 6 千

    6k

    99.59%成功率 7 千

    7k

    99.43%成功率 8 千

    8k

    99.31%成功率 9 千

    9k

    99.09%成功率 1 万

    10k

    到这里我就没有继续压了。因为 cpu 已经满了。 看下 1w 资源占用情况:

    1w 下资源情况

    未来可期

    9 条回复    2023-09-28 12:20:58 +08:00
    ebony0319
        1
    ebony0319  
    OP
       214 天前
    压测工具是阿里云的 PTS ,数据比较真实。
    winglight2016
        2
    winglight2016  
       214 天前   ❤️ 1
    没有试一下 springboot webflux 下的性能吗?毕竟这个场景更常见
    ebony0319
        3
    ebony0319  
    OP
       214 天前
    @winglight2016 以后有空用 Netty 结合虚拟线程来一波试一下
    ebony0319
        4
    ebony0319  
    OP
       214 天前
    @winglight2016 springboot webflux 要 spring 那一套,我只是想看下语言特性而已😊😊
    salmon5
        5
    salmon5  
       214 天前   ❤️ 1
    这就叫专业
    liuhai233
        6
    liuhai233  
       214 天前
    虚拟线程好猛啊
    xingjue
        7
    xingjue  
       213 天前
    go 协程 完美支持了
    ysy950803
        8
    ysy950803  
       213 天前
    这个虚拟线程是不是和 Kotlin 的协程一样的底层实现?
    yty2012g
        9
    yty2012g  
       212 天前
    我本来想尝试改造 spring mvc 到 spring webflux ,奈何各种 servlet 的 api 都要重新搞,工作量过大而放弃了😂😂
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   956 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 19:38 · PVG 03:38 · LAX 12:38 · JFK 15:38
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.