arthas的入门

arthas下载安装curl -O https://arthas.aliyun.com/arthas-boot.jarjava -jar arthas-boot.jar执行该程序的用户需要和目标进程具有相同的权限,如果attach不上目标进程,可以查看~/logs/arthas/ 目录下的日志命令特

并发编程总结(二):JUC下的锁

1.JUC的包结构2.AbstractQueueSynchronizer2.1.AQS原理2.2.AQS的数据结构2.3.LockSupport.park(Object blocker)和LockSupport.unpark(Thread thread)2.3.AQS中的一般处理流程2.3.1.pu

对象的共享

对象的共享对于可变状态的管理同步-线程安全性共享和发布变量同步对象的状态可见性什么是可见性?对于状态的修改,对于其他线程是能够及时同步到的,称之为可见性重排序为什么需要重排序?如果代码严格按照我们所编写的代码顺序执行,则会出现如下问题假设有三个操作,代码顺序如下 A写入流 B执行其他操作 C写入流,

并发编程(十三):StampedLock

1.StampeLock支持的三种工作模式2.StampeLock的注意事项3.StampeLock的使用模板读多写少的场景中,JDK1.8提供了更快的解决方案,叫做StampeLock,其性能比ReadWriteLock要好1.StampeLock支持的三种工作模式写锁:和ReadWriteLoc

并发编程(Pre):总览

1.并发编程的三个核心问题:分工:同步:互斥:2.并发编程的实质:操作系统1.并发编程的三个核心问题:分工同步互斥分工:高效的拆解任务并分配给多个线程,例如Fork/Join框架就是一种分工模式通俗来说,就是现实当中需要完成一个项目,项目经理需要将任务分配给不同的人员完成,Java SDK并发包中的

并发编程(十六):原子类

1.无锁的原子类实现原理1.1.CAS原理1.2.CAS自旋1.3.Java原子类如何通过CAS实现原子自增2.原子类概述2.1.原子化的基本数据类型2.2.原子化的对象引用类型2.3.原子化数组2.4.原子化对象属性更新器2.5.原子化的累加器1.无锁的原子类实现原理1.1.CAS原理原子类的无锁

并发编程(一)并发编程bug的源头:可见性、有序性、原子性

1.并发编程的幕后2.问题一:缓存导致的可见性问题3.源头之二:线程切换带来的原子性问题4.源头之三:编译优化带来的有序性问题5.总结1.并发编程的幕后CPU、内存、磁盘IO的速度差异,CPU>内存>磁盘程序中的一个操作,可能会访问内存也可能还要访问磁盘,根据木桶理论我们能知道此时的性能

InfluxDB(七):数据写入.md

1.写入总体框架2.批量时序数据Shard路由3.倒排索引引擎构建倒排索引3.1.WAL追加写入3.2.Cache的写入( Inverted Index在内存中构建)3.3.flush(Inverted Index Cache Flush流程)4.时序数据写入流程4.1.WAL追加写入4.2.写入C

InfluxDB(六):多维查询之倒排索引.md

时序数据库的基本目标:高吞吐的写入数据分级存储TTL数据高压缩率多维度的查询能力高效聚合能力InfluxDB针对上述的实现如下:高吞吐的写入:TSM存储引擎保证了高效率的写入(数据(二级)组织+Key有序,追加写的顺序写入)数据分级存储:TSM数据组织,Range+Hash(保证了范围查找时候的性能

InfluxDB(五):TSM存储引擎之TSMFile.md

1.TSM引擎核心基石:时间线2.TSM引擎工作原理-时序数据写入3.TSM文件结构3.1.Series Data Section3.2.Series Index Block4.TSM引擎工作原理-时序数据读取LSM:InfluxDB采用LSM结构,数据先写入内存以及WAL,当内存容量达到一定阈值之
Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×