- 博客(3)
- 收藏
- 关注
原创 java之性能分析
起因: 上班碰到个性能问题单测试提出现网分析功能启动分析完成后,查询功能很慢,导致页面查询服务超时,无法展示数据解决方案:1.Arthas-阿尔萨斯 工具2.下载安装因为是个jar包,所以用java可以直接运行wget https://arthas.aliyun.com/arthas-boot.jar3.ps -ef | grep 对应微服务 找到pid4.运行java -jar arthas-boot.jar 找到对应的pid5.trace - 方法内部调用路径trace 类路径 方
2021-12-08 23:57:34
952
原创 java之数据溢出
场景:int和long类型原因:int 4个字节,一个字节是8位,那么int类型是有32位,其中一位代表正负号所以用二进制表述数据值范围为2的31次方-1到负的2的31次方。而这个值区间为-2147483648~2147483647。一般情况下是用不到的,一旦超出2147483647,程序自动变为-2147483648。结果产生异常数据解决方案:Math.addExact(a, b); 替代加法 超出则会抛出异常注意事项:如果是-2147483648 取绝对值的时候,也会溢出,导致数据异
2021-12-08 23:41:03
1157
原创 java之精确计算
double float1.为什么double float不能用于精确计算?因为double8个字符,计算机是用二进制表示,一旦表示小数那么比如1.01+2.13那么算出来的结果用二进制就是无法表示准确的数字,不能用二分之一的n次方的求和来表示,这样就到会3.14没法用具体的数据了表示,一句话总结就是精度不够2.那么我们在使用double类型的时候需要注意什么呢?不能用作算钱在保留小数位的时候多保留一些位数,四舍五入3.如果需要精确计算的场景,那怎么办呢注释事项:此处需要初始化对象的时候最
2021-12-08 23:29:47
571
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人