自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(4)
  • 收藏
  • 关注

原创 一致性非读定读和一致性锁定读

一致性非锁定读 指Innodb存储引擎通过行多版本控制的方式来读取当前执行时间数据库中的行的数据。 如果读取的行正在执行DELETE和UPDATE操作,这是读取操作不会因此去等待行上锁的释放。相反地,InnoDB存储引擎会去读取行的一个快照数据。快照数据时指该行的之前版本的数据。 多版本并发控制:对于一个行记录的数据,可能快照数据不止一个,称为这种技术为行多版本技术。带来的并发控制,称为多版本并发控制(MVCC) 在事务隔离级别Read Committed和Repeatable Read下,Innodb存

2021-08-18 23:35:43 122

原创 Redis 删除策略

一、Redis中的数据特征 Redis是一种内存级数据库,所有数据均存放在内存中,内存中的数据可以通过TTL指令获取其状态 XX :具有时效性的数据 -1 :永久有效的数据 -2 :已经过期的数据 或 被删除的数据 或 未定义的数据 二、数据删除策略 数据删除策略的目标:在内存占用与CPU占用之间寻找一种平衡,顾此失彼都会造成整体redis性能的下降,甚至引发服务器宕机或内存泄露 1. 定时删除 创建一个定时器,当key设置有过期时间,且过期时间到达时,由定时器任务立即执行对键的删除操作 优点:节约内

2021-08-18 13:39:01 93

原创 阻塞队列使用

BlockingQueue接口 当使用的传输通道为空时消费者无法取出产品,此时消费者可以进行等待,直到传输通道非空。当使用的传输通道为满时生产者无法放入新产品,此时生产者可以进行等待,直到传输通道有空间可以放。从传输通道中存入一个产品或者取出一个产品时,相应的线程可能因为传输通道中没有产品或者其存储孔家按已满时而被阻塞(暂停),则称这种传输通道为阻塞式。 内部实现细节可参考以下链接: BlockingQueue及其实现 【Java并发之】BlockingQueue ArrayBlockingQueue

2021-08-02 11:04:38 56

原创 Object.notify()/notifyAll()的选用

实现通知比较流行保守的方法是优先使用notifyAll()保障正确性 Object.notify()可能导致信号丢失的正确性问题,Object.notifyAll()虽然效率不高(把不需要唤醒的等待线程给唤醒),但是保证正确性方面有保障。 只有在以下两个条件都满足的情况下使用notify()代替notifyAll() 一次通知仅需要唤醒至多一个线程 相应对象上的所有等待线程都是同质等待线程(同质等待线程:指线程使用同一个保护条件,并且这些线程在Objec.wait()调用返回之后的处理逻辑一致) ..

2021-08-01 10:18:24 125

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除