深拷贝(clone)是java开发过程中经常遇到问题,有人用io流、有人用json序列化、有人循环拷贝属性等等,网上文章都能实现功能。
问题:
clone是计算操作,消耗cpu如果速度慢(高并发场景几十ms也是非常慢的)会导致程序卡顿,qps降低。网上解决方案都没有提到性能问题,我实际使用后对性能进行了优化,最后推荐:FastClone
FastClone介绍
FastClone是一款非常好用,支持大部分场景深克隆和浅克隆的工具。被推荐的不多,被埋没了。
<dependency>
<groupId>com.github.bruce-cloud</groupId>
<artifactId>fastclone</artifactId>
<version>1.0.RELEASE</version>
</dependency>
用法:
// 深克隆list
FastClone fastClone = new FastClone();
List<T> clone = fastClone.clone(src);
// 深克隆list
FastClone fastClone

本文探讨了Java深拷贝的性能问题,指出传统的克隆方法在高并发场景下可能导致程序卡顿。作者推荐了一款名为FastClone的工具,其在大对象深克隆上的平均耗时仅为3.4ms,比IO流和json序列化等方式快了约20倍,但不支持ConcurrentHashMap。使用FastClone可以有效避免CPU飙升和接口响应超时等问题。
最低0.47元/天 解锁文章
982





