- 1、本文档共11页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
高并发下MySQL数据库的优化-金凯声[精选]
高负载下MySQL数据库的优化 金凯声 2009-12-24 优化重点 运维角度优化 硬件优化 升级硬件 优化硬件驱动配置 Mysql优化 配置优化 编译参数优化 部署方案优化 系统及应用级优化更有效 高负载判断 硬件相关 服务器系统Load超过经验阀值(top) 查看磁盘IO,繁忙引发cpu高占用(iostat ) 查看服务器连接数超过预设值 (netstat) 数据库自身指标 并发数 (mysqladmin status) 慢查询数(同上) 硬件之间的相互影响 服务器之磁盘相关 磁盘IO 读写压力 如:社区类增,删,改操作频繁 读写分离 调整磁盘子系统参数(提高读写频率) /proc/sys/vm/dirty_ratio /proc/sys/vm/dirty_background_ratio /proc/sys/vm/dirty_writeback_centisecs /proc/sys/vm/dirty_expire_centisecs(5秒-2秒) 修改文件系统(ext3-XFS) 服务器之磁盘 修改文件系统( 巨大反差) 服务器之内存、cpu 内存成为系统高负载原因 内存耗尽 Mysql占用swap分区 服务器其他程序挤占内存 Cpu成为高负载瓶颈原因 慢查询 频繁的锁表操作 MySQL配置优化之连接数 连接数过多处理办法 提高mysql连接数阀值 降低前台与DB的连接次数 减少慢查询数,提高响应时间 减少或合并锁表操作,提高响应时间 分表分库 分服务器 主从结构,集群。。。 Mysql之配置优化 中心工作调节各种类型缓存大小 缓存过小,会降低命中,导致直接表操作增加,影响性能。 缓存过多,增加内存开销 缓存类型 读、写、索引、查询、排序、临时表、关键字等待。。。 真实的并发处理数 thread_concurrency = 8 服务器cpu内核数 各种缓存大小 key_buffer = 384M 索引块缓存 max_allowed_packet = 1M table_cache = 2048 所有线程打开表的数量 sort_buffer_size = 2M 对排列缓存 read_buffer_size = 2M 读缓存 read_rnd_buffer_size = 8M 随即读排序缓存 myisam_sort_buffer_size = 64M 排序MyISAM索引分配的缓冲区 thread_cache_size = 8 可以复用的保存在缓存中的线程的数量 query_cache_size = 32M 查询缓存 tmp_table_size = 256M 临时表大小 max_heap_table_size = 256M 内存表大小 延时等待 interactive_timeout=2880000 对后续起的交互链接有效; wait_timeout=2880000 对当前交互链接有效; 连接数 max_connections= 3000 最大并发数 max_connect_errors = 6000 back_log=500 堆栈队列大小 域名相关 skip-name-resolve 跳过反响解析 结束语 一般系统级优化到有限的 优化目的是发挥硬件潜能 但受硬件限制 或受到操作系统内核限制 应用级优化才是真正的王道 通过select语句优化 通过调整业务策略较少连接数 或分解慢查询,提高执行效率 包括分解逻辑降低DB使用率等待 这些都可以从根本上解决DB高并发问。 * 一般不会出问题,因为网卡流量跑满前其他硬件已经无法支持了 网卡 系统变慢或崩溃,load升高 大量的临时表空间占用 cpu高 占用swap分区 内存 系统变慢,load升高 慢查询,跨表统计等 无 使用率高 cpu load高 频繁读写 cpu高 使用率高 磁盘I/O 导致结果 原因 受影响硬件 状态 * * *
文档评论(0)