- 2024-06-10记一次锁使用不当导致Dubbo线程阻塞问题
背景线上环境一个后台项目,提供基于dubbo实现的事件分发服务,最近突然出现心跳超时。问题分析检查内存是否溢出jstat-gcutil81661000意料之中,内存正常,因为内部有接入内存溢出告警,如果是内存溢出应该有收到通知,但是这次没有溢出通知。查看线程栈jstack-l8166发现有大
- 2024-05-27警惕!自定义注解使用不当的排查实录
一、引言大家好,在日常开发过程中,Java注解(Annotation)是开发中经常使用的一个手段,用于给代码添加元数据的标记。它们可以提供代码额外的信息,这些信息可以在编译时或运行时被访问。注解不会改变代码的执行逻辑,但可以被编译器、JVM或框架等工具用于生成额外的代码、提供警告或执
- 2024-03-29管理者权力的探讨:资深团队管理者的视角
管理者权力的探讨:资深团队管理者的视角在团队的管理过程中,管理者的权力是一个不可忽视的因素。它不仅关系到团队的日常运作,还直接影响到项目的成败和团队成员的士气。对于资深团队管理人员而言,如何理解和运用这一权力,是一项至关重要的任务。管理者权力的本质首先,我们需要明确管
- 2024-02-05【踩坑指南】线程池使用不当的五个坑
线程池是Java多线程编程中的一个重要概念,它可以有效地管理和复用线程资源,提高系统的性能和稳定性。但是线程池的使用也有一些注意事项和常见的错误,如果不小心,就可能会导致一些严重的问题,比如内存泄漏、死锁、性能下降等。本文将介绍线程池使用不当的五个坑,以及如何避免和解决它
- 2024-01-21线程池最佳实践!这几个坑使用不当直接生产事故!!
拿来即用!这篇文章我会介绍我使用线程池的时候应该注意的坑以及一些优秀的实践。1、正确声明线程池线程池必须手动通过 ThreadPoolExecutor 的构造函数来声明,避免使用Executors 类创建线程池,会有OOM风险。Executors 返回线程池对象的弊端如下(后文会详细介绍到):FixedThreadPo
- 2023-08-038 个线程池最佳实践和坑!使用不当直接生产事故!!
这篇文章我会简单总结一下我了解的使用线程池的时候应该注意的坑以及一些优秀的实践。拿来即用,美滋滋!内容概览:Java指南:https://java-family.cn1、正确声明线程池线程池必须手动通过 ThreadPoolExecutor 的构造函数来声明,避免使用Executors 类创建线程池,会有OOM风险。Ex
- 2023-07-01记一次etcd全局锁使用不当导致的事故
1、背景介绍前两天,现场的同事使用开发的程序测试时,发现日志中报etcdserver:mvcc:databasespaceexceeded,导致etcd无法连接。很奇怪,我们开发的程序只用到了etcd做程序的主备,并没有往etcd中写入大量的数据,为什么会造成etcd空间不足呢?赶紧叫现场的同事查了下etcd存储数
- 2023-04-02关于Date使用不当的bug
关于Date使用不当的bug1、背景用户调用接口,传入一个参数分钟,表示想要查询距离现在多少分钟的记录。有的时候会查不到记录。2、排查过程大致代码。获取当前的时间的date对象now,通过now的时间戳计算前beforeMinute的时间戳,转换成date对象查询executeTime>=before&&exec
- 2023-01-31await使用不当引发的异常
1、异步方法不await引发异常向文件写入大量内容:因为WriteAllTextAsync是独占式写入,又不等待,都没写完就到下一行读,肯定占用进程报错!2、await等待了一个非异步的方法
- 2022-12-19一次 Redis 事务使用不当引发的生产事故
这是悟空的第170篇原创文章官网:http://www.passjava.cn你好,我是悟空。本文主要内容如下:一、前言最近项目的生产环境遇到一个奇怪的问题:现象:每天早上客服人员在后
- 2022-11-30由querywrapper使用不当导致的两个错误
QueryWrapper<Invoice>queryWrapper=newQueryWrapper<>(invoice);Page<Invoice>page=newPage<Invoice>(invoice.getPageNo(),invoice.getPageSize());queryWrap