• mysql 原理~buffer_pool并发


    一 简介 buffer pool的并发访问机制的改进与局限

    二 详细
       1 innodb_buffer_pool_instance
          1 当较多数据加载到内存时, 使用多缓存实例能减少缓存争用锁情况。
          2 全局大锁 buffer pool mutex 依然存在,直到8.0才进行拆分解决
       2 page_cleaner的出现
         1 出现了单独的page_cleaner线程,独立承担了刷页工作,减少了master的负担
         2 出现了多线程的page_cleaner,加快了脏页刷新的效率
       3 page_celaner不能解决的问题
          基本就是高并发下page_cleaner超负荷工作时进行的CKPT,周期性的CKPT并不在考虑范围内
         1 redo不够用,覆盖前强制进行CKPT
         2 LRU列表已到达空闲页最少的阈值,需要强制进行CKPT
    4 purge的出现
        1 出现了单独的purge线程,独立承担了清理undo和删除标记的工作,减少了master的负担
    5 dblwr成为重要的单点瓶颈。
       1 非SSD硬盘必须打开double write buffer。
       2 涉及到的锁 分为两部分:single page flush和batch flush,
       3 即使拆分了多个page cleaner,最终扩展性还是受限于dblwr

        4 官方已经开始对此开始优化工作

    三 总结

       1  只是根据淘宝内核周报写的一点自己的总结,还会继续补充

       2 以上出现的几个关键点解读在我的博客里都有体现,感兴趣的可以去看

  • 相关阅读:
    分片副本监控优化备份分词器03
    es score限制
    German Collegiate Programming Contest 2017 G. Water Testing
    SQL注入以及sqlmap初体验
    BUUCTF [极客大挑战 2019]Upload 1
    DVWA—File Upload 文件上传
    DVWA—XSS 跨站脚本攻击
    WUSTCTF2020 佛说:只能四天
    猪圈密码
    2016全国大学生信息安全竞赛 破译
  • 原文地址:https://www.cnblogs.com/danhuangpai/p/11434511.html
Copyright © 2020-2023  润新知