- 博客(18)
- 收藏
- 关注
转载 【GC系列】JVM垃圾定位及垃圾回收算法浅析
目录1. 什么是垃圾2. 如何找到垃圾2.1.引用计数2.2. 根可达算法3. 常见的垃圾回收算法3.1. 标记清除3.2. 拷贝算法3.3. 标记压缩4. 小结1. 什么是垃圾很简单,没有引用指向的任何对象都叫做垃圾(garbage)。什么是garbage在某一内存空间中,Java程序制造了很多对象被引用,有的对象还引用别的对象,中途有对象不被需要了就没有指向他的引用了,这些没有引用指向的东西就是垃圾。这些垃圾不需要自己回收.
2022-03-18 10:09:25
453
原创 MySQL时间戳索引失效SQL慢查问题排查
最近一次sql慢查的排查过程其中一个点是自己之前没有关注过的首先有一张表tableA,tableA每天会在上午6点50左右接收一批同步数据,数据量大约在40000+表结构中含有常规的id, create_time, update_time之类的字段,create_time字段建了索引;该表保留一周的数据,因此该表数据的总行数目前维持在35W+查询的sql使用了create_time的查询条件,查询的时间区间时1天,理论上能查出的数据在40000+,占数据总量的约11%但是,实..
2021-04-16 15:43:05
1592
原创 log4j2滚动日志问题排查
起因项目中的日志框架使用了log4j2+slf4j的组合进行日志输出log4j2配置的是RollingRandomAccessFile的滚动日志,设置了60天过期,可是并没有在30天后清除30天前的日志文件,导致了准生产环境中的磁盘存储空间预警报警;排查首先拿出其中info日志的配置进行排查 <RollingRandomAccessFile name="FILE-INFO" fileName="${baseDir
2021-03-11 15:34:11
1294
原创 springboot-druid-shardingsphere-mybatis整合
项目背景最近发现各小组之间的项目在搭建脚手架的时候,或多或少存在很多共性,于是想在已有的脚手架基础上引入sharding作为数据库代理实现分库分表;Maven管理使用的springboot版本1.5.9.RELEASE主要框架版本 Springboot 1.5.9.RELEASE druid 1.1.23 shardingsphere 4.1.1 由于公司一些保密原则,列举的pom依赖去掉了一些公司的内部jar版本,如果缺了什么jar请...
2021-01-18 16:56:48
766
转载 Chrome 后端使用跨域Cookie校验的解决方案
在最近一个项目中,我们的后端是使用session存储用户的登陆态的,开发过程经常是需要跨域访问后端接口的,这种时候就需要跨域能够存储cookie。chorme在80版本以上禁止了跨域设置cookie,因此需要修改一些配置。打开chorme,在url中输入chrome://flags 搜索SameSite by default cookies 。 找到SameSite by default cookies和Cookies without SameSite must be secure这两项,将后面的.
2020-12-09 17:27:21
385
原创 NoSuchMethodError问题解决记录-使用eclipse自带功能
NoSuchMethodError翻译过来是找不到方法通过之前的查阅资料,知道一般是两种情况,一种是jdk版本不对,另一种是jar包冲突。检查之后排除第一种原因,便针对第二种原因debug使用开发工具eclipseEclipse Java EE IDE for Web Developers.Version: Neon.2 Release (4.6.2)找到代码报错的位置,例...
2018-08-17 14:17:35
1385
原创 DB2往ORACLE的数据迁移
刚好最近做了一次数据迁移,起因是需要导出数据库的表结构和数据,配合WAR包一起发到项目组,但是项目组的数据库是ORACLE,我们测试的时候用的是DB2数据库,需要将数据从DB2迁移一份到ORACLE,并将ORACLE数据导出。由于表中存在clob大字段,故传统的数据导入insert语句并不能实现。使用的工具有plsql和dbvisualizer自己编写的代码有两块一个是将db2导出的建表语句转换成...
2018-05-17 16:52:55
2895
原创 解决InputStream.read读取数据出现丢失的情况
InputStream.read(byte[] b)InputStream.read(byte[] b,int off,int len)这两者都可批量读取数据,进入byte[]缓存。但是即便是实现给定好byte[]的长度,指定长度进行读取,也不一定能完全读取数据。这里的做法可用以下: byte[] bodyReceived = new byte[dataLen]; ...
2018-04-09 09:24:24
6248
1
原创 IBM WebSphere MQ的调用总结
MQ队列经常用于异步传输信息,本篇仅分享java调用mq的经验。一、名词解释1、MQMessage Queue消息队列2、队列管理器(Queue Manager):管理队列的系统,实现 网络通信,保证消息安全可靠地传输到目的地。3、发送队列 send queue以MQ中间件为主体,发送队列是java代码从MQ中间件读取消息时,所走的队列4、接收队列 receive queue以MQ中间件为主体,接...
2018-03-28 16:59:32
2021
1
原创 LoadRunner11使用心得
#通过java编写测试类,以jar包的方式引入Loadrunner进行测试1.loadrunner11必须使用jdk1.6 32位2.JAVAHOME和CLASSPATH都需要配置好3.编写测试类(基于jdk1.6)需要的依赖包都需要加入到Run-Time Settings中的Classpath中#写好测试JAVA类后,导出为jar包
2018-01-29 16:53:13
585
原创 一些Eclipse报错记录
1、java compiler level does not match the version of the installed java project因工作的关系,Eclipse开发的Java项目拷来拷去,或者从SVN上down下来,有时候会报一个很奇怪的错误。明明源码一模一样,为什么项目复制到另一台机器上,就会报“java compiler level does not m
2017-12-21 16:34:21
298
原创 SSM框架引入通用mapper插件
为什么引入通用mapper通用Mapper可以简化CRUD操作,不必单独为每一Mapper指定CRUD接口 所需jar包:mapper-3.3.9.jarpersistence-api-1.0.jarSpring配置文件mybatis自动扫描加载Sql映射文件/接口 : MapperScannerConfigurer sqlSessionFactory basePackage:指定sql映射
2017-12-19 16:49:28
1327
原创 常用linux命令大全
常用指令ls 显示文件或目录 -l 列出文件详细信息l(list) -a 列出当前目录下所有文件及目录,包括隐藏的a(all)mkdir 创建目录 -p 创建目录,若无父目录,则创建p(parent)cd 切
2017-12-07 14:45:29
162
转载 设计模式读书笔记-----单例模式
转自:http://blog.csdn.net/chenssy/article/details/9237859
2017-12-07 14:41:47
135
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人