V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
MySQL 5.5 Community Server
MySQL 5.6 Community Server
Percona Configuration Wizard
XtraBackup 搭建主从复制
Great Sites on MySQL
Percona
MySQL Performance Blog
Severalnines
推荐管理工具
Sequel Pro
phpMyAdmin
推荐书目
MySQL Cookbook
MySQL 相关项目
MariaDB
Drizzle
参考文档
http://mysql-python.sourceforge.net/MySQLdb.html
yodhcn
V2EX  ›  MySQL

MySQL 单机 QPS 是多少?

  •  
  •   yodhcn ·
    yodhcn · 2023-10-18 21:40:57 +08:00 · 3487 次点击
    这是一个创建于 400 天前的主题,其中的信息可能已经有所发展或是发生改变。
    在一篇博客中看到 MySQL 不适合高并发,2000QPS 就开始报警,真是这样的吗? MySQL 单机的 QPS 在怎样的一个范围?

    mysql 这么重的数据库,压根儿设计不是让你玩儿高并发的,虽然也可以玩儿,但是天然支持不好。mysql 单机支撑到 2000QPS 也开始容易报警了。
    https://doocs.gitee.io/advanced-java/#/docs/high-concurrency/why-cache
    17 条回复    2024-10-15 03:48:48 +08:00
    NXzCH8fP20468ML5
        1
    NXzCH8fP20468ML5  
       2023-10-18 21:52:05 +08:00   ❤️ 1
    这不得看机器配置么。而且数据库不仅要看 QPS ,也得看 TPS 。
    明天看看华为给的手册再回复你,mark 一下。
    IwfWcf
        2
    IwfWcf  
       2023-10-18 22:00:57 +08:00   ❤️ 1
    这个显然不存在一个固定的数值啊,和数据集规模,单次查询涉及的数据量和计算量,机器本身的性能都有关系啊
    wy315700
        3
    wy315700  
       2023-10-18 22:02:46 +08:00   ❤️ 1
    QPS 的话,MariaDB 达到过 100 万 qps
    https://mariadb.org/10-1-mio-qps/

    TPS 的话,2000 压力其实挺大了
    BarackLee
        4
    BarackLee  
       2023-10-18 22:04:49 +08:00   ❤️ 2
    https://help.aliyun.com/zh/rds/support/test-results-of-apsaradb-rds-instances-that-run-mysql-8?spm=a2c4g.11186623.0.0.218c4450qJquTB
    哥们,这个是阿里云的 mysql 性能测试, 你可以看下, 不同的机器表现不同. 我查了一下,腾讯云和华为云的性能差不多. 在高级 SSD 加成的情况下, 1 核 1G 的机器都可以到 40 万 QPS.
    这个问题,你也可以实际安装一个 mysql 看下. 跑一些脚本很快的.
    要是只有 windows 机器, 你可以花 1000 块钱买一个 7 年前的 macbook air 专门用来做类 unix 的性能测试什么的. 这个测试的过程会让你学到很多. 自己测出来的数据,你也会更加理解这些数据的意义.
    yodhcn
        5
    yodhcn  
    OP
       2023-10-18 22:15:13 +08:00
    @BarackLee #4 感谢老哥,这个很有参考价值
    aisk
        6
    aisk  
       2023-10-19 00:29:24 +08:00
    啥叫开始报警?你配置 1nm 没响应就报警的话,那是不是任何数据库都要报警?
    jeesk
        7
    jeesk  
       2023-10-19 00:59:23 +08:00
    实际场景实际测试。 如果某个事务长度为 5s. 你说能够跑多少 tps ?
    liprais
        8
    liprais  
       2023-10-19 01:11:29 +08:00 via iPhone
    我们用的 rds mysql 最低配要到 2w qps 才会 cpu 100%
    日常几千 qps 吧
    realpg
        9
    realpg  
       2023-10-19 01:44:36 +08:00
    你为啥不先说一下,你存数据的物理硬盘有多少 iops
    opengps
        10
    opengps  
       2023-10-19 08:59:51 +08:00   ❤️ 1
    高并发的高字,可以有很多前提条件,比如对于注册,一个论坛一年才注册几个,这时候考虑高并发甚至是多余的
    但对于强依赖关系型数据库的业务,单实例单硬盘虽然不够,但可以分表分区分物理硬盘介质等方案搭配,可以搭配 redis 等缓存,没法上来就不带任何前提的去说不合适
    cheng6563
        11
    cheng6563  
       2023-10-19 10:23:13 +08:00
    批量插入也是随便上万的。
    慢的是更新
    Tinet
        12
    Tinet  
       2023-10-19 11:25:51 +08:00
    mysql 不同操作的 IO 模型不一样,脱离 IO 模型谈并发,没有意义
    encro
        13
    encro  
       2023-10-19 14:14:47 +08:00
    @cheng6563

    批量插入是快,但是实际场景开启事务,一条一条插,还是挺慢的。
    wangxin13g
        14
    wangxin13g  
       2023-10-19 14:27:10 +08:00
    用的什么机器跑的什么查询语句甚至用的 SSD 内存都会影响到结果,光看一个数据得不出任何有意义的结论
    mickerwx
        15
    mickerwx  
       2023-10-19 19:17:12 +08:00
    肯定得有限制啊 不然你怎么会舍得掏钱去买甲骨文
    NXzCH8fP20468ML5
        16
    NXzCH8fP20468ML5  
       2023-10-24 19:52:04 +08:00 via Android   ❤️ 1
    @yodhcn 华为的手册没翻到,翻到了自己公司的测试报告。
    16c128g 情况下,mysql8.0 单库,可以支持 2500tps ,50000qps 。
    再往上就不推荐单节点 mysql 了。
    wxf666
        17
    wxf666  
       38 天前
    @BarackLee #4

    1 核 1G 的机器,MySQL 能跑 40W QPS ?

    还是 40W Q/Minute ?即,6000 QPS ?

    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1098 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 22:50 · PVG 06:50 · LAX 14:50 · JFK 17:50
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.