Search for History
Clear
Home
Home
2019.06.28
JavaEE
Druid
Springboot Druid 使用Slf4j输出可执行SQL
前言在开发中,为了数据安全,所有SQL语句肯定是用占位符的,但是在实际开发中,为了方便追踪问题,经常需要查看具体执行的SQL语句内容,而用了占位符之后,每次真实执行的语句只能靠自己根据参数拼接出来,耗时耗力,所以需要一个方法输出每次执行的SQL语句,并且还是有参数的(替换了占位符),而Druid就支持此功能(Druid的主要功能可不是这个),所以此文主要讲Springboot环境下使用Dru...
899
3min
2019.05.07
JavaEE
Springboot
SpringMVC,SpringBoot快速验证参数是否完整 基于@Valid注解
前言在接口开发中,经常是需要对传入参数完整性进行验证的,或者对手机号格式进行验证等,而一般不了解@Valid注解之前,都是通过自己封装方法来验证,都是一堆if else集合,这样判断对于代码结构很不友好,开发效率也不高,使用@Valid注解可以快速的对参数进行验证,并且可以通过抓取全局异常,从而实现统一返回引用@Valid是使用hibernate validation的时候使用,其中java...
1.1k
4min
2019.02.26
服务器
Linux配置Tomcat日志轮转(切割)
服务器每天都会产生很多各种各样的日志,尤其是生产环境,因为很多日志需要保留一段时间,防止这段时间内出现了问题却没有找到日志文件,当然为了更好的查询日志和定位错误,推荐搭建EFK(ELK)日志分析系统(centos7搭建EFK日志分析系统),但是就算搭建了EFK,也还是需要定时删除原始的日志文件,而如果没有对原始日志文件进行分割的话,一旦删除就会把整个原始日志文件删除掉,万一某一部分日志还未写...
2.1k
7min
2018.11.27
JavaEE
定时同步数据的任务优化
前言定时任务在系统中并不少见,主要目的是用于需要定时处理数据或者执行某个操作的情况下,如定时关闭订单,或者定时备份。而常见的定时任务分为2种,第一种:固定时间执行,如:每分钟执行一次,每天执行一次。第二种:延时多久执行,就是当发生一件事情后,根据这件时间发生的时间定时多久后执行任务,如:15分钟后关闭订单付款状态,24小时候后关闭订单并且释放库存,而由于第二种一般都是单一数据的处理(主要是指...
3.6k
12min
2018.09.14
服务器
日志
centos7搭建EFK日志分析系统
前言EFK可能都不熟悉,实际上EFK是大名鼎鼎的日志系统ELK的一个变种在没有分布式日志的时候,每次出问题了需要查询日志的时候,需要登录到Linux服务器,使用命令cat -n xxxx|grep xxxx 搜索出日志在哪一行,然后cat -n xxx|tail -n +n行|head -n 显示多少行,这样不仅效率低下,而且对于程序异常也不方便查询,日志少还好,一旦整合出来的日志达到几个G...
2.2k
9min
2018.09.13
服务器
Mysql
记一次MySQL迁移并从MySQL5.6升级到5.7后查询慢了几十倍的问题
起因因为生产环境数据量越来越大,客户越来越多,项目功能也越来越多,项目本身也越来越多,导致之前的服务器内存、硬盘都已经渐渐的不够用了,当时出现了2种解决方案,增加服务器配置和新购服务器,但是就算是新增硬盘,也需要对数据库进行迁移,所以就采用了新购服务器的方案,并且因为之前是高效云盘,出现过IO占满的情况,所以对于新购的服务器采用了SSD硬盘,理论上速度会飞起来了,实际上我在新服务器上安装My...
3.1k
11min
2018.07.23
服务器
使用monit监控服务进程和硬盘以及自动重启进程
需求需要服务器运行的程序在被意外杀死时,能自动重启,同时提醒我程序发生过重启。在服务器硬盘使用量达到一定比例的时候,提醒迁移数据或者清理无用的日志文件,所以需要一个服务器的守护程序(能在centos上运行),要求轻量简单占用少,根据上面的需求,找到了supervisor和monit2款软件supervisor 和 monit的对比因为主要是要满足以上我们的需求,所以我们根据实际需求来对比,而...
2.1k
8min
2018.07.07
JavaEE
记一次ajax的JSESSIONID 变化解决、非跨域变化
前言某一天测试提了一个bug,系统进入到某个页面中后,出现登录失效,不管怎么样,只要进入这个页面再点击其他链接就会去到登录页面,测试环境没有问题。开始解决第一步:怀疑代码问题因为测试环境没有任何问题,所以怀疑是代码本身的问题,于是在本地测试,发现本地没有问题,于是重新打包部署到正式服务器测试,发现还是出现异常。第二步:确认为何会登录失效因为代码和测试环境与本地都是一样的,所以怀疑是数据原因导...
1k
3min
2018.06.22
JavaEE
Maven
通过Maven profile实现环境切换,快速部署到正式环境
前言在开发工作中存在多个环境:开发环境、测试环境、正式环境(生产环境),而每个环境的MySQL、Redis、Rabbitmq、ElasticSearch等配置各不相同,所以每次开发完成部署或者更新都需要手动改变配置文件,尤其是当使用jenkins等相关自动化编译部署的工具的时候,必须要先修改配置文件再上传代码,否则更新就容易出错。解决这个问题常用的方法有:一是通过Git分支,不同环境不同分支...
1.3k
5min
2018.06.06
ElasticSearch
ElasticSearch优化会员列表搜索
ElasticSearch简介ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便,维基百科、Stack Overflow、...
2k
8min
1
2
3
…
5