0%

AQS

  • AQS : AbstractQueuedSynchronizer ,即队列同步器。 是一个用来构建锁和同步器的框架

AQS 的原理

阅读全文 »

Synchronized关键字

概念

  • synchronized 是为了解决多线程同步访问资源的问题。 synchronized 关键字可以保证被它修饰的方法或者代码块在任意时刻只能有一个线程执行。
  • Java多线程依赖于操作系统原生线程,所以挂起或者唤醒一个线程,需要操作系统帮忙完成。而操作系统需要从用户状态切换成内核状态,时间相对较长,时间成本高。
阅读全文 »

线程概述

线程和进程

  • 进程:程序的一次执行过程,程序的运行就是一个进程从创建、运行到消亡的过程。进程是计算机运行的基本单位,进程之间是相互独立的。
  • 线程:线程是 CPU 执行的基本单位,一个进程可以分为多个线程,多个线程对进程的资源使用存在竞争关系。
阅读全文 »

分布式ID生成器

一、需求缘起

几乎所有的业务系统,都有生成一个唯一记录标识的需求,例如:

阅读全文 »

分布式事务

概述

  • 在分布式系统中实现事务,他其实是由多个本地事务组合而成。
阅读全文 »

分布式锁

基于数据库

  • 基于数据库表记录做唯一约束(表中记录方法名称)
  • 基于数据库表做悲观锁(InnoDB,for update)
  • 基于数据库表做乐观锁,用于分布式锁。(version)
阅读全文 »

GC参数和调优

// TODO