非常郁闷的一次调优

前天给朋友调优,上的生产库用ssms远程连接测试,5个表的连接,每个表大小都在10万多的数据量,有几个是hash连接,比较费时,后来调优了几个索引后IO明显下降,但是在执行时间上一直没有明显下降,实在是没辙了,调优到晚上一点钟,睡觉,第二天继续,最后怀疑是因为网络问题,让朋友上的远程桌面生产库直接执行,一秒以内!晕死了,原来是因为网络传输问题导致在我机器上的执行时间延长!

不过几个表的连接比较难控制连接顺序,想在连接的初始阶段就将数据过滤到最小,但是一直没有控制连接顺序,没办法,使用了force order选项,同时根据业务逻辑对表进行修改,冗余了数据,可以减少2个表的连接,大大减少IO,这次调优得以成功。

时间: 2024-11-08 20:25:50

非常郁闷的一次调优的相关文章

MySQL性能调优与架构设计——第9章 MySQL数据库Schema设计的性能优化

MySQL性能调优与架构设计——第9章 MySQL数据库Schema设计的性能优化 前言: 很多人都认为性能是在通过编写代码(程序代码或者是数据库代码)的过程中优化出来的,其实这是一个非常大的误区.真正影响性能最大的部分是在设计中就已经产生了的,后期的优化很多时候所能够带来的改善都只是在解决前妻设计所遗留下来的一些问题而已,而且能够解决的问题通常也比较有限.本章将就如何在 MySQL 数据库 Schema 设计的时候保证尽可能的高效,尽可能减少后期的烦恼. 9.1 高效的模型设计 最规范的就一定

jmeterGUI&非GUI模式之如何减负性能调优

jmeter之如何减负-实现稳定超高并发测试(性能调优)在测试过程中,初学者使用工具不当,添加众多监控组件,非常想看到实时报告,跑不了一会,jmeter就卡死甚至内存耗尽,只得重启,之前的统计报告没了,非常郁闷. 下面来总结下如何正确使用jmeter,有效利用执行资源,小型机器也可以实现高并发负载. 1.优化监听(GUI模式)“查看结果树”,需要勾选“仅日志错误”,这样只会保存错误日志到内存,数据不会多,如果保存所有,那么会保存每个请求请求信息和相应信息,而且这些数据都是保存到jvm(Java

JVM原理讲解和调优

一.什么是JVM JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的. Java语言的一个非常重要的特点就是与平台的无关性.而使用Java虚拟机是实现这一特点的关键.一般的高级语言如果要在不同的平台上运行,至少需要编译成不同的目标代码.而引入Java语言虚拟机后,Java语言在不同平台上运行时不需要重新编译.Java语言使用Java虚拟机屏蔽了与具体平台相关的信息

spark性能调优之资源调优

转https://tech.meituan.com/spark-tuning-basic.html spark作业原理 使用spark-submit提交一个Spark作业之后,这个作业就会启动一个对应的Driver进程.根据你使用的部署模式(deploy-mode)不同,Driver进程可能在本地启动,也可能在集群中某个工作节点上启动.Driver进程本身会根据我们设置的参数,占有一定数量的内存和CPU core.而Driver进程要做的第一件事情,就是向集群管理器(可以是Spark Stand

mysql性能调优与架构设计笔记

1.mysql基本介绍 mysql支持多线程高并发的关系型数据库; 数据库存储引擎InnoDB.MyISAM; mysql快速崛起的原因就是他是开源的; 性能一直是mysql自豪的一大特点; 2.mysql架构组成 麻雀虽小五脏俱全,mysql虽然简单但其内部结构并不简单; mysql物理文件组成之日志文件: 错误日志error log这里记录mysql运行时严重的警告和错误,以及mysql启动和关闭的日志信息 二进制日志 binary log 记录mysql运行时所有的query和query执

网络调优

关于网络调优,尤其是TCP Tuning(你可以以这两个关键词在网上找到很多文章),这里面有很多很多东西可以说.看看Linux下TCP/IP的那么多参数就知道了(顺便说一下,你也许不喜欢Linux,但是你不能否认Linux给我们了很多可以进行内核调优的权力).强烈建议大家看看<TCP/IP详解卷1:协议>这本书.我在这里只讲一些概念上的东西. A)TCP调优 我们知道TCP链接是有很多开销的,一个是会占用文件描述符,另一个是会开缓存,一般来说一个系统可以支持的TCP链接数是有限的,我们需要清楚

【Spark深入学习 -14】Spark应用经验与程序调优

----本节内容------- 1.遗留问题解答 2.Spark调优初体验 2.1 利用WebUI分析程序瓶颈 2.2 设置合适的资源 2.3 调整任务的并发度 2.4 修改存储格式 3.Spark调优经验 3.1 Spark原理及调优工具 3.2 运行环境优化 3.2.1 防止不必要的分发 3.2.2 提高数据本地性 3.2.3 存储格式选择 3.2.4 选择高配机器 3.3 优化操作符 3.3.1 过滤操作导致多小任务 3.3.2 降低单条记录开销 3.3.3 处理数据倾斜或者任务倾斜 3.

iOS应用性能调优的25个建议和技巧

目录 我要给出的建议将分为三个不同的等级: 入门级. 中级和进阶级: 入门级(这是些你一定会经常用在你app开发中的建议) 1. 用ARC管理内存 2. 在正确的地方使用reuseIdentifier 3. 尽可能使Views透明 4. 避免庞大的XIB 5. 不要block主线程 6. 在Image Views中调整图片大小 7. 选择正确的Collection 8. 打开gzip压缩 中级(这些是你可能在一些相对复杂情况下可能用到的) 9. 重用和延迟加载Views 10. Cache, C

php调优

php.ini配置文件调优 1. expose_php off 2. register_globals off(重要,防止GET和POST变量自动注册为全局变量,一定要关闭) 3. 打开magic_quotes_gpc来防止SQL注入,重要!是防止SQL注入的重要手段,该参数将用户提交的SQL查询进行转换,如将'转换为\'. 4. display errors off 4. max_excution_time 30s 最长执行时间. 5. memory_limit,一个脚本能申请到的最大内存,防