首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
java架构师必备
订阅
笨笨熊
更多收藏集
微信扫码分享
微信
新浪微博
QQ
76篇文章 · 0订阅
为什么阿里Java手册推荐慎用 Object 的 clone 方法来拷贝对象
在阿里Java开发手册中,有这么一条建议:慎用 Object 的 clone 方法来拷贝对象。对象 clone 方法默认是浅拷贝,若想实现深拷贝需覆写 clone 方法实现域对象的深度遍历式拷贝 。Java中的对象拷贝,有浅拷贝和深拷贝两种,如果没有搞清楚这两者的区别,那么可能…
常见的集合容器应当避免的坑
前不久帮同事一起 review 一个 job 执行缓慢的问题时发现不少朋友在撸码实现功能时还是有需要细节不够注意,于是便有了这篇文章。 其实在大部分情况下这都是没啥问题,无非就是循环的往 ArrayList 中写入数据而已。 但在特殊情况下,比如这里的 getData() 返回…
一文学会Java死锁和CPU 100% 问题的排查技巧
1. 什么是死锁? 2. 为什么会出现死锁? 3. 怎么排查代码中出现了死锁? 4. 如何避免写出死锁的代码? 作为技术人员(工程师),在出现问题的时候,能够尽快的去解决这个问题。但是在学习技术知识的时候,还是脚踏实地,多问一些为什么,一个好的问题,能够让自己思考,这方面的能力…
面试必备:Java AQS 实现原理(图文)分析[精品长文]
AQS的实现是基于一个FIFO的等待队列。 使用单个原子变量来表示获取、释放锁状态(final int)改变该int值使用的是CAS。(思考:为什么一个int值可以保证内存可见性?) 子类应该定义一个非公开的内部类继承AQS,并实现其中方法。 AQS支持exclusive与sh…
分布式事务就是这么简单之RocketMQ解决方案
现在比较流行的分布式架构而言,它虽然带来一系列好处,比如支持高并发,高可用集群。同时它也带来一系列的挑战,今天我们将的就是其中一种挑战 - 分布式事务。 在传统的all in 项目中单数据源的事务一致性依赖于单机事务,但是如果上升到分布式项目中,那么保证事务的一致性仅仅…
为什么要有复合索引?
要理解索引,你需要在脑中有个画面,这里建议想象一本食谱,不是普通食谱,而是5000页的厚重食谱,包含各种场合、菜肴和季节的食谱。虽然这个食谱很全,但是它有个缺点就是它是乱序的,第一页可能是鱼香茄子,第3000页是红烧茄子。 下面是你要问自己的第一个问题:如果没有索引如何在食谱中…
JVM篇之java内存模型
在并发编程中,我们通常要处理两个问题:线程之前如何通信与线程之间如何同步。 同步是指控制不同线程的操作发生相对顺序的机制,在共享内存并发模型里,同步是显式进行的,程序员必须显式指定某个方法或某段代码需要在线程之间互斥执行。在消息传递的并发模型里,由于消息的发送必须在消息的接收之…
基于分布式锁的防止重复请求解决方案
关于重复请求,指的是我们服务端接收到很短的时间内的多个相同内容的重复请求。而这样的重复请求如果是幂等的(每次请求的结果都相同,如查询请求),那其实对于我们没有什么影响,但如果是非幂等的(每次请求都会对关键数据造成影响,如删除关系、建立关系等),那就会轻则产生脏数据,重则导致系统…
分布式全局ID生成方案
传统的单体架构的时候,我们基本是单库然后业务单表的结构。每个业务表的ID一般我们都是从1增,通过AUTO_INCREMENT=1设置自增起始值,但是在分布式服务架构模式下分库分表的设计,使得多个库或多个表存储相同的业务数据。这种情况根据数据库的自增ID就会产生相同ID的情况,不…