摘要: 2) 在MySQL服务器层实现的,与存储引擎无关 3) 命令格式LOCK TABLES tbl_name [AS alias] {READ [LOCAL] | [LOW_PRIORITY] WRITE} [, tbl_name [AS alias] {READ [LOCAL] | [LOW_PRIO 阅读全文
posted @ 2019-08-29 22:54 爱上咖啡的唐 阅读(238) 评论(0) 推荐(0) 编辑
摘要: 1. 逻辑结构 1) 结构图如下 2) 连接/线程处理:大多基于网络客户端/服务器的工具或服务都有类似的.主要用作连接处理,授权认证,安全等 3) 第二层:大多MySQL核心服务在此层,包括:查询解析,分析,优化,缓存,内置函数(日期,时间,数学,加密函数),跨存储引擎的功能(存储过程,触发器,视图 阅读全文
posted @ 2019-08-29 22:52 爱上咖啡的唐 阅读(129) 评论(0) 推荐(0) 编辑
摘要: 1. 读写锁 1) 读锁也叫共享锁,写锁也叫排他锁 2) 读锁:相互不阻塞,多用户可以同时读取 3) 写锁:会阻塞其他读锁和写锁,给定时间内只有一个用户写入,其他用户不能读写 2. 锁粒度 1) 锁粒度:一种提高共享资源并发性的方式,让锁定对象更有选择性. a 尽量只锁定需要修改的部分数据,而不是所 阅读全文
posted @ 2019-08-06 19:57 爱上咖啡的唐 阅读(176) 评论(0) 推荐(0) 编辑
摘要: 对象的内存分配,主要就是堆上分配(也可能结果JIT编译后被拆散为标量类型并间接在栈上分配)。对象主要分配在新生代Eden区,如果启动了本地线程分配缓冲,将按线程优先在TLAB上分配,少数情况分配在老年代上。具体分配取决于垃圾收集器组合使用情况以及虚拟机参数设置 1. GC 1) 新生代GC(Mino 阅读全文
posted @ 2019-07-29 18:42 爱上咖啡的唐 阅读(125) 评论(0) 推荐(0) 编辑
摘要: 1. 并发与并行 1) 并发:多条垃圾收集器线程并行工作,用户线程处于等待状态 2) 并行:用户线程和垃圾收集线程同时执行(不一定并行,可能会交替执行) 2. Serial收集器(新生代,单线程,复制算法收集器,最基本,最悠久的收集器,JDK1.3.1版本之前) 1) 单线程收集器:不表示只使用一个 阅读全文
posted @ 2019-07-29 18:41 爱上咖啡的唐 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 1. 标记-清除算法(mark-sweep)最基础的算法 首先标记要回收的对象,然后一次性清除 1) 有两个缺点 l 清除效率不高 l 可能会产生大量不连续的内存碎片,当一个较大对象需要分配内存时可能会提前触发另一次垃圾回收 2) 分为存活,可回收,未使用三个状态 2. 复制收集算法(copying 阅读全文
posted @ 2019-07-09 19:41 爱上咖啡的唐 阅读(544) 评论(0) 推荐(0) 编辑
摘要: (一) 引用计数法 每有一个引用就加1,每失效一个就减1,为0表示可回收;但是此方法无法解决相互引用的情况 (二) 根搜索算法 从一系列的GCRoots对象为起点向下搜索,搜索的路径称为引用链,当一个对象没有任何引用链和GCRoots相连(也可以说成GCRoots到该对象不可达),则说明该对象可回收 阅读全文
posted @ 2019-07-05 23:38 爱上咖啡的唐 阅读(170) 评论(0) 推荐(0) 编辑
摘要: (一) 程序计数器(program counter register线程私有) 当前线程执行字节码的行号指示器 1. 分支、循环、跳转、异常处理、线程恢复等依赖计数器完成 2. 当执行的是native方法时,值为空 3. Jvm中唯一没有内存溢出的 (二) Java虚拟机栈(Java virtual 阅读全文
posted @ 2019-07-05 22:55 爱上咖啡的唐 阅读(191) 评论(0) 推荐(0) 编辑
摘要: 报错内容如下(省略了好多): Multiple annotations found at this line: - Execution default-resources of goal org.apache.maven.plugins:maven-resources-plugin:2.6:reso 阅读全文
posted @ 2019-05-19 21:35 爱上咖啡的唐 阅读(529) 评论(0) 推荐(0) 编辑
摘要: 1. 常用命令与回复 A. 返回报错信息格式:(error)ERR +错误明细 B. ping命令:测试客户端和服务端连接是否正常,返回pong C. dbsize:获取当前键的数量 D. incr + key :键值递增,如果之前的数据不是数字,会报错 E. set + key + values 阅读全文
posted @ 2019-03-06 19:48 爱上咖啡的唐 阅读(119) 评论(0) 推荐(0) 编辑