自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

爱码士

不积跬步无以至千里,每天进步一点点 O(∩_∩)O

  • 博客(11)
  • 收藏
  • 关注

转载 mysql redolog 和binlog的理解

概念1,redolog 是记录页修改的日志,比如 再更新一个字段的操作中 就会记录哪个页 对哪个字段的修改 属于物理日志redolog 是innodb引擎特有的2,binlog 记录了更新的语句 是逻辑日志 是server层实现的分析一条更新sql语句的执行过程执行器先找引擎取 ID=2 这一行。ID 是主键,引擎直接用树搜索找到这一行。如果 ID=2 这一行所在的数据页本来就在内存中,就直接返回给执行器;否则,需要先从磁 盘读入内存,然后再返回。执行器拿到引擎给的行数据,把这个

2021-03-24 10:21:27 198

转载 Paxos作为ZooKeeper的灵魂?

原计划在介绍完ZK Client之后就着手ZK Server的介绍,但是发现ZK Server所包含的内容实在太多,并不是简简单单一篇Blog就能搞定的。于是决定从基础搞起比较好。那么ZK Server最基础的东西是什么呢?我想应该是Paxos了。所以本文会介绍Paxos以及它在ZK Server中对应的实现。先说Paxos,它是一个基于消息传递的一致性算法,Leslie Lamport在1990年提出,近几年被广泛应用于分布式计算中,Google的Chubby,Apache的Zookeeper都是基于

2021-03-10 17:29:58 89

转载 彻底搞懂 Redis 事务

提到redis的事务,相信很多初学的朋友会对它的理解和使用有些模糊不清,料想它和我们常见的关系型数据库(mysql 、mssql等)中的事务相同,也支持回滚,但这样理解就进入了一个误区,首先:关系型数据中的事务都是原子性的,而redis 的事务是非原子性的。再多说一句,什么是程序原子性?简单的理解就是:整个程序中的所有操作,要么全部完成,要不全部不完成,不会停留在中间某个环节。那么非原子性就是不满足原子性的条件就是非原子性了。我们用例子来解释一下:原子性:数据库中的某个事务A中要更新t1表、t2表的某条记

2021-03-09 14:18:04 89

原创 IO的原理及Java中的各种IO模型

文章目录一、内存与io?二、使用步骤1.引入库2.读入数据总结一、内存与io?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码如下(示例):import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as snsimport warningswarnings.filterwarnings('ignore')im

2020-09-25 16:39:49 347

原创 深挖Redis的五种数据类型(附带应用场景)

文章目录前言一、String二、Hash三,List总结前言介绍Redis中最常用的五种数据类型:String,Hash,List,Set,Sorted_Set一、StringRedis的String类型是按字节流进行存储,是二进制安全的。为什么Redis不用字符流进行存储?对于不同编程语言字符类型,整型,浮点等。所占字节数可能都不一样,使用二进制存储的好处就是不需要担心各种类型在不同场景中代表的字节数是不同,Redis作为一个中间件需要保证存储安全。通讯双方只需要制定相同的字符集进行编码

2020-09-11 12:32:24 366 1

原创 java程序员必须掌握的JVM调优知识

什么是JVM调优?我认为JVM的调优可以从以下三个方面进行:1.根据业务需求进行JVM规划和预调优2.优化JVM的运行环境3.解决JVM运行过程中产生的各种问题首先结合项目的业务需求来进行规划,

2020-09-08 09:55:03 525

转载 java虚拟机中的7种垃圾收集器

下面先来了解HotSpot虚拟机中的7种垃圾收集器:Serial、ParNew、Parallel Scavenge、Serial Old、Parallel Old、CMS、G1,先介绍一些垃圾收集的相关概念,再介绍它们的主要特点、应用场景、以及一些设置参数和基本运行原理。垃圾收集器概述 垃圾收集器是垃圾回收算法(标记-清除算法、复制算法、标记-整理算法、火车算法)的具体实现,不同商家、不同版本的JVM所提供的垃圾收集器可能会有很在差别,本文主要介绍HotSpot虚拟机中的垃圾收集器。垃圾...

2020-09-02 15:30:24 210 1

原创 创建一个java对象在JVM层面发生了哪些事情?

对象的创建过程1.加载对象->2.在堆中分配对象存储空间->3.给对象内的成员变量赋默认值->4.调用对象构造函数->5.给对象内的成员变量赋初始值->6.执行构造函数内的代码(super.init())调用父类构造函数。进过这些步骤对象创建完成。对象的组成参数针对于64位机器普通对象:名称长度(字节)markwork(对象头)8classPoint(类指针)默认4(压缩后),开启-XX:+UseCompressedOops 为8

2020-09-01 18:52:39 354

原创 类在JVM中如何加载?何为双亲委派机制?

类的加载顺序一个class进来进行loading加载到内存中,然后进行linking,linking中又分为verification(检查),preparartion(准备),resolution(处理)。接着进行initalizing初始化给静态变量赋初始值,判断为无用类进行GC回收。linking模块进行描述:verification->用来检查加载进来的class是否符合解析的标准preparartion->给class的静态变量赋默认值,一般基本类型为0,引用类型为null。

2020-08-31 19:10:05 316 2

原创 进程,线程,纤程及中断的理解

进程进程是OS(操作系统)分配资源的基本单元及一个程序运行起来的状态。线程线程是进程中执行调度的单元,是进程中不同的执行路径。进程和线程的区别进程有独立的内存空间,线程没有自己独立的内存空间,线程共享进程的内存空间。纤程纤程跑在用户态,是线程中的线程,纤程的调度和切换不需要经过OS内核,所以速度极快,占用资源少,可支持高并发。一个线程大约占用1M的空间,一个线程占用4K,一次性可以启动10w+个纤程。目前支持纤程的语言有Kotlin Scala Go Python(lib)等java目前j

2020-08-31 09:36:13 416

原创 计算机的CPU及Cache讲解

CPU的组成部分先看看CPU的组成部分是什么样的,CPU的组成非常的复杂下面有一个CPU制作视频,讲的很好。大家可以看看这是Intel cpu的制作过程https://haokan.baidu.com/v?vid=11928468945249380709&pd=bjh&fr=bjhauthor&type=video(视频)https://www.sohu.com/a/255397866_468626(文章)CPU的原理计算机的诞生时为了解决如何代表数字,cpu是由大量的

2020-08-29 23:01:56 1081 1

空空如也

空空如也

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

TA关注的人

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