- 博客(13)
- 收藏
- 关注
原创 LHon(学习笔记)——MySQL锁
MySQL锁的学习最近工作中遇到了一些和MySQL有关的问题,看了很多博客,发现每一篇博客的观点都有所不同,越看越迷惑,所以还是决定自己参考书籍《MySQL技术内幕 InnoDB存储引擎》梳理一下关于MySQL锁的一些认识…什么是锁数据库系统使用锁是为了支持对共享资源进行并发访问,提供数据的完整性和一致性。为了保证一致性,必须有锁的介入。lock 与 latch这两者都可以被称为锁,latch是一种轻量级的锁,其要求锁定的时间必须非常短,否则应用的性能会非常差,它存在的目的是为了保证并发
2021-09-17 15:38:06 118
原创 LHon(学习笔记)——Spring事务隔离级别与传播行为
个人主页参考1参考2参考3Spring事务的传播行为什么是事务是数据操作的最小工作单元,是作为单个逻辑工作单元执行的一系列操作;这些操作作为一个整体一起向系统提交,要么全部执行,要么都不执行(也就是说要么全部成功,要么全部失败);事务是一组不可再分割的操作集合(工作逻辑单元)。常见的例子就是转账,例如A给B转账1000元开启事务 -> A账户扣除1000 -> B账户增加1000 -> 提交事务上面的事务任何一个步骤出错都会导致事务回滚事务的四大特性(ACID)
2021-07-11 14:07:26 186
原创 LHon(学习笔记)——Java设计模式
个人主页为什么要学设计模式呢?就像建房子要学建筑一样,其实设计模式就是从建筑学上产出的,学了建筑可以建出好看的房子,学设计模式自然是为了写出优美的代码。这篇文章主要记录一下设计模式的基础,后续会对23种设计模式分别学习,并会在我的**github**上分享学习过程种产出的源码。设计模式的目的代码重用性(相同功能的代码,不用多次编写);可读性(代码规范性,便于其他程序员阅读和理解);可扩展性(增加新的功能时非常方便);可靠性(增加新的功能对原有功能没有影响);使程序呈现出高内聚、低耦合的
2020-10-24 18:47:54 143
原创 LHon(学习笔记)——Eureka
先谈谈微服务微服务是一种架构模式或者说是一种架构风格,它提倡将单一应用程序分成一组小的服务,每个服务运行在其独立的进程中,服务之间互相协调、互相配合,为用户提供最终价值,服务之间采用轻量级的通信机制互相沟通(通常是基于HTTP的RESTful API,而Dubbo是采用了RPC作为通信机制,即远程过程调用协议),每个服务都围绕着具体的业务进行构建,并能够独立地部署到生产环境、类生产环境等,并且...
2020-09-24 09:42:31 211
原创 探究ExecutorService的invokeAll()方法获取的结果是否具有顺序性
探究invokeAll()方法个人粗糙的主页该博客源码存放于 github背景:在用ExecutorService做了一个多线程查询数据并导出之后,对它的invokeAll()方法产生了一个想法,用它获取到的结果是否是有序的呢?先上代码package com.mezjh.blog.thread;import java.util.ArrayList;import java.util.List;import java.util.concurrent.*;/** * 探究 Execut
2020-09-17 10:10:17 830
原创 LHon(学习笔记)——分析OOM产生原因
文章目录JVMOOM堆内存的OOMHeap DumpjmapjstackJVM在弄清楚OOM产生的原因之前,我们务必要搞清楚Java的内存模型,也就是JVM,这可以参考我之前的一个学习笔记 JVM学习笔记先来看一下要用到的JVM的一些参数:参数名称含义-Xms初始堆大小-Xmx最大堆大小-Xmn年轻代大小-Xss每个线程的堆栈大小-XX:+HeapDumpOnOutOfMemoryError目录下生成堆的Dump文件当初始化堆内存容量
2020-08-12 18:30:41 546
原创 LHon(学习笔记篇)——浅谈聚簇索引与非聚簇索引
索引简介索引是帮助MySQL高效获取数据的数据结构,常见的有HASH、B+ Tree两种数据结构。现在主要讲解B+ Tree这种数据结构,B+ Tree在不同存储引擎中的表现形式是不一样的:在Innodb中,其被称为聚簇索引,在MyISAM中,其被称为非聚簇索引。索引数据结构的演变1、二叉查找树这种树的特点就是左子树值小于根节点的值,右子树值大于根节点的值,当数据以1,2,3,4…的顺序插入时(如下图),将会形成一条链,其查询相当于全表扫描,加了索引毫无意义。2、平衡二叉树它解决了二叉查
2020-08-11 22:44:22 354
原创 LHon(学习笔记篇)——JVM
如有不对,请指正。JDK与JREJDK即 Java Development Kit ,Java开发工具;JRE即 Java Runtime Environment ,Java运行时环境。我们所写的.java文件经过javac编译之后生成.class文件(生成在硬盘上),JVM便会去运行这些.class文件。class文件:编译生成在硬盘上;class content:类加载器将class文件加到到系统里面的一块内存;class对象:类加载器解析class content里面的内容所生成的cl
2020-06-28 19:53:25 219
原创 LHon(学习笔记篇)——Kylin
文章目录Kylin概述Kylin特点Kylin架构Kylin工作原理Cube和CuboidKylin核心算法Kylin概述** Apache Kylin是一个开源的分布式分析引擎,提供Hadoop/Spark之上的SQL查询接口及多维分析(OLAP)能力以及支持超大规模数据,最初由eBay开发并贡献至开源社区。它能在亚秒内查询巨大的Hive表。Kylin特点Kylin的主要特点包括支持...
2020-02-13 22:38:17 224
原创 LHon(学习笔记篇)——Zookeeper
一、Zookeeper概述Zookeeper是一个开源的分布式的,为分布式应用提供协调服务的Apache项目,它是一个基于观察者模式设计的分布式分布式服务管理框架,负责存储和管理大家都关心的数据,然后接受观察者的注册,一旦这些数据的状态发生变化,Zookeeper就负责通知已经在Zookeeper上注册的观察者作出相应的反应。Zookeeper=文件系统+通知机制大致工作机制:每当有服务...
2020-02-11 20:00:02 120
原创 代码路上的错误总结(持续更新中)
错误总结加油吧 - -为了未来 !1.SpringBoot项目整合jasypt使用java -jar命令无法启动问题报错信息:APPLICATION FAILED TO STARTDescription:Failed to configure a DataSource: ‘url’ attribute is not specified and no embedded datasou...
2019-12-11 20:15:00 247
原创 一看就会的Linux系统安装Zookeeper
文章目录1.下载安装包2.上传到Linux服务器并开始安装3.启动Zookeeper1.下载安装包官网地址,使用官网地址,需走以下流程。直接下载地址,使用此地址,下载后直接跳转到第二个步骤。2.上传到Linux服务器并开始安装使用FinalShell(mac版本)工具(windows可以用xshell),连接到Linux服务器,在usr/local下创建zookeeper文件夹,...
2019-12-04 16:53:46 297
原创 IDEA使用Maven+Spring Boot构建多Module项目
注:这次创建的项目供后面的Spring Cloud学习使用,其实就是不用Spring Cloud实现的微服务,如果需要看Spring Cloud学习笔记的,请点击 (等待更新)话不多说 直接开始首先创建一个Maven项目,按照下面的步骤走就行了创建好之后,修改pom.xml文件,添加pom然后在microservice项目名上右键>新建>Module点击完成之...
2019-11-28 14:00:36 297
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人