› 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
uti6770werty
V2EX  ›  MySQL

请问 MySQL 上有什么不折腾的办法,把瞬时并发过来的短链接 INSERT,缓一缓放类似”池“里,进行缓处理?主要是服务器受不了。。。

  •  
  •   uti6770werty · Oct 14, 2020 · 4621 views
    This topic created in 2211 days ago, the information mentioned may be changed or developed.

    并非是商业生产环境,只是小环境测试,没钱来换服务器升级,
    一下子很多短链接并发来,都是 INSERT,一下子 MySQL 响应就慢了,看到 Threads_connected 上到了 800,然后就缓不过来一阵子,最后是发出 INSERT 的程序蹦掉了。

    MySQL 是否有不折腾,让这些并发量大的 INSERT 做个 cache,缓着先,跟着适合的节奏慢慢写?

    18 replies  •  2020-10-15 21:40:13 +08:00
    xuanbg
    xuanbg
    Oct 14, 2020
    1
    没有,但大家都用消息队列削峰去谷。
    1018ji
    1018ji
    Oct 14, 2020
    2
    INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE] 这些参数试试
    arthurblake
    arthurblake
    Oct 14, 2020
    3
    可否在发出 INSERT 的程序端做一下缓存。
    BBCCBB
    BBCCBB
    Oct 14, 2020
    4
    放消息队列然后批量消费批量 insert.
    XDJI
    XDJI
    Oct 14, 2020❤️1
    5
    不过你们 tps 多少呀 之前我基准测试了下一台 4v16g 的随机读写 64 线程 tps 能到 2000+
    yuudachiPoi
    yuudachiPoi
    Oct 14, 2020
    6
    消息队列。
    lbp0200
    lbp0200
    Oct 14, 2020 via iPhone
    7
    如果是 PHP 的话,就是 800 个进程,一个进程 10 兆,需要 8G 内存
    fredcc
    fredcc
    Oct 14, 2020
    8
    插入锁表了么,上有序队列成本不低啊
    dorothyREN
    dorothyREN
    Oct 14, 2020
    9
    要不借你个数据库做测试?
    onepunch
    onepunch
    Oct 14, 2020
    10
    你的系统怕不是有慢查询吧
    Jooooooooo
    Jooooooooo
    Oct 14, 2020
    11
    写入的地方慢一点呗
    jones2000
    jones2000
    Oct 14, 2020
    12
    写一个数据库写入的 api, 所有数库写入都调用这个 api 写入, 不要直接连接数据库写入了。
    simple2025
    simple2025
    Oct 15, 2020 via Android
    13
    @lbp0200 php 内存这么低?我现在的 py 进程一个 50m,这还是我去掉 jinja2 cache 的结果
    jorneyr
    jorneyr
    Oct 15, 2020
    14
    加个 Nginx,设置相应 API 的 QPS 限制就好了。
    lbp0200
    lbp0200
    Oct 15, 2020
    15
    @chenqh 当然不可能这么低,而且这不是重点,重点是内存满了就会用虚拟内存,然后电脑的性能就十分感人了。
    zhangysh1995
    zhangysh1995
    Oct 15, 2020
    16
    二楼 +1 票 @1018ji
    haosamax
    haosamax
    Oct 15, 2020
    17
    #4 批量插吧
    gaius
    gaius
    Oct 15, 2020 via Android
    18
    不怕丢数据就内存队列,批量插
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   5121 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 141ms · UTC 01:19 · PVG 09:19 · LAX 17:19 · JFK 20:19
    ♥ Do have faith in what you're doing.