一、、、
话说今天客户遇到了统计数据查询非常缓慢的问题,情况比较诡异,在某次程序升级之后突然发生。
鉴于之前rds(mysql5.6)表现还不错,所以以为可能是用户单表数据接近千万所以导致查询有问题,产生瓶颈了,导致iops一直跑满。然而数据全部同步到本地的mysql5.7之后发现,本地速度很快啊。。。
只好开始看aliyun的慢日志,发现竟然有些查询需要近20分钟!把这些查询挑出来explain,悲催的发现,本地和服务器的查询计划完全不一样...服务器的根本就没用到索引,虽然索引存在。
再然后就开始了漫长的分析过程,why why why...后来联系一位oracle master的朋友咨询了一下才明白,这种破事竟然很正常...最终我灵机一动,删掉了服务器的索引然后重建,发现终于查询计划可以用上索引了,看来是索引莫名其妙的失效了!
这个事情让我对rds的机制产生了非常不靠谱的赶脚,另外即使能用索引了,服务器和本地使用的索引竟然不一样,完全莫名其妙;比如用状态和时间查询,存在这两个字段的联合索引,竟然在rds mysql 5.6上会落到另外一个奇怪的索引上。
下面再买rds尽量买5.7了,我觉得应该是mysql5.6的不靠谱导致的;另外这个数据量,也许应该考虑一下分区了。
二、、、
开发团队之前用springboot的时候一直在idea里面配合jrebel,结果新来了一批开发人员之后,jrebel安装的乱七八糟,导致做点什么都得重启项目,实在崩溃。
于是调查了一下发现springboot-devtools依赖竟然就是解决这个的,实在很意外,因为早几年知道spring loaded,这东西也是当时grails 2.x的自动编译加载的基础,实在不是太好用,没想到现在springboot又自己做了一个小插件,看起来似乎也不麻烦。
具体配置上也比较简单:
1.添加依赖(maven or gradle)
2.添加代码
System.setProperty("spring.devtools.restart.enabled", "false");
否则重新编译会引发项目自动重启
3.src/main/resources/config/application-dev.yml,spring.devtools.livereload.enabled: true
这个配置比较关键,会编译后自动加载,很好用。
另外说一下的是,如果有jrebel启动,devtools会自动禁用,采用jrebel;另外devtools好像不具备自动重新加载mybatis的能力,有这个需求最好是jrebel了。
相关推荐
主要介绍了解决SpringBoot使用devtools导致的类型转换异常问题,具有很好的参考价值,希望对大家有所帮助。 一起跟随小编过来看看吧
主要介绍了SpringBoot Devtools实现项目热部署的方法示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
主要介绍了SpringBoot2.X Devtools热部署实现解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
主要介绍了一篇文章带你搞定SpringBoot中的热部署devtools方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
主要介绍了spring-boot中使用spring-boot-devtools的实现代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
主要介绍了SpringBoot实现devtools实现热部署过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
DevTools通过提供自动重启和LiveReload功能,使您更快、更轻松地开发Spring Boot应用程序。这篇文章主要介绍了Spring Boot DevTools使用教程,需要的朋友可以参考下
下面小编就为大家带来一篇解决Intellij IDEA 使用Spring-boot-devTools无效的问题。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
主要介绍了IntelliJ IDEA中SpringBoot项目通过devtools实现热部署的方法,本文分步骤给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
devtools是boot的一个热部署工具,当我们修改了classpath下的文件(包括类文件、属性文件、页面等)时,会重新启动应用。本文通过实例给大家介绍springboot+devtools热部署,感兴趣的朋友一起看看吧
本篇文章主要介绍了详解SpringBoot配置devtools实现热部署 ,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
主要介绍了SpringBoot如何通过devtools实现热部署,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
1.3、SpringBoot和SpringMVC区别 1 1.4、SpringBoot和SpringCloud区别 2 1.5常见错误 2 二、快速入门 2 2.1、创建一个Maven工程 2 2.2、pom文件引入依赖 3 2.3、编写HelloWorld服务 3 2.4、@RestController 4...
vue devtools6.4.5版本
通过添加devtools和修改pom文件插件以及修改编译器的环境变量的配置来实现SpringBoot项目的自动热部署,以便快速开发
springboot-devtools工具包的使用实现热处理 及json数据格式的使用
主要介绍了Springboot项目基于Devtools实现热部署,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
Vue devtools插件 6.1.3
该资源包括vue2.0-devtools谷歌浏览器调试工具和vue3.0-devtools谷歌浏览器调试工具,具体安装方法参考我的博客https://blog.csdn.net/dxnn520/article/details/121088688,如还不会,可私信我。