- 博客(19)
- 收藏
- 关注

原创 写在前面:笔记来源
博客在前期主要是拿来记笔记用的,都是在学习网站B站上找的视频来看,然后整理出来笔记方便查阅。[java基础]系列视频是看 2020黑马Java基础班[JVM]系列视频是看 2020最新-JVM-Java虚拟机-从入门到精通-尚硅谷...
2020-04-05 17:31:54
164
原创 [Java基础] 框架设计的灵魂---反射
反射机制将类的各个组成部分封装为其他对象,这就是反射机制Java代码在计算机里会经历三个阶段:源代码阶段(Source源代码):.java文件通过编译形成.class文件,字节码文件加载进内存中class类对象阶段:通过类加载器(ClassLoader)加载形成类对象(包括有成员变量 Field[] fields、构造方法Constructor[] cons、成员方法Method[] methods)Runtime运行时阶段:通过类对象创建对象反射机制的体现就是将class文件里的成员变
2020-08-09 21:10:36
182
1
原创 [Redis] 主从复制
为了避免单点Redis服务器故障,准备多台服务器,互相联通。将数据复制多个副本保存在不同的服务器,连接在一起,并保证数据是同步的。即使有其中一台服务器宕机,其他服务器依然可以继续提供服务,实现Redis的高可用,同时实现数据冗余备份。多台服务器连接方案提供数据方:master(主服务器,主节点,主库,主客户端)接收数据方:slave(从服务器,从节点,从库,从客户端)需要解决的问题:数据同步核心工作:master的数据复制到slave中主从复制概念主从复制就是将master中的
2020-07-23 13:06:22
154
原创 [Redis] 服务器基础配置和高级数据类型
服务器基础配置服务器端设定设置服务器以守护进程的方式运行:daemonize yes|no绑定主机地址:bind 127.0.0.1设置服务器端口号:port 6379设置数据库数量:databases 16日志配置设置服务器以指定日志记录级别:loglevel debug|verbose|notice|warning日志记录文件名:logfile 端口号.log注意:日志级别开发期设置为verbose即可,生产环境中设置为notice,简化日志输出,降低写日志IO的频度。
2020-07-21 17:15:56
131
原创 [Redis] redis的删除策略
Redis中的数据特征:Redis是一种内存级数据库,所有数据仅存在内存中,内存中的数据可以通过TTL指令获取其状态XX:具有时效性的数据-1:永久有效的数据-2:已经过期的数据,被删除的数据,未定义的数据一、过期数据...
2020-07-19 17:44:34
211
原创 [Redis] redis事务基础
一、什么是事务在执行指令的过程中,多条连续执行的指令会被干扰、打断、插队。redis事务就是将预定义命令包装成一个整体(一个队列),在执行时,一次按照添加顺序依次执行,中间不会被打断或者干扰。一个队列中,一次性、顺序性、排他性的执行一系列命令二、事务的基本操作开启事务:multi,设定事务开启的位置,此指令执行后,后续的所有指令均加入到事务中(返回的是QUEUED)执行事务:exec,设定事务结束位置,同时执行事务。与multi成对出现,成对使用取消事务:discard,在事务定义过程中出现了
2020-07-16 18:24:17
109
原创 [Redis] redis持久化基础
一、持久化简介什么是持久化利用永久性存储介质将数据进行保存,在特定的时间将保存的数据进行恢复的工作机制称为持久化。为什么要进行持久化防止数据意外丢失,确保数据的安全性。持久化过程保存的是什么RDB:将当前数据状态进行保存,快照 形式,存储数据结果,存储格式简单,关注点在数据。AOF:将数据的操作过程进行保存,日志 形式,存储操作过程,存储格式复杂,关注点在数据的操作过程。二、RBDRBD启动方式—save指令命令save作用:手动执行一次操作
2020-07-16 14:24:29
261
原创 [Redis] Jedis的用法
一般redis运行环境是在linux环境下,作为初学者,在学习基础指令和操作可以选择用windows环境。Windows环境下用jedis的操作流程:Maven注入jedis需要用的jar包:<dependencies> <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId
2020-05-24 13:52:27
171
原创 [Redis] redis的通用指令
1、key通用操作key是一个字符串,通过key获取redis中保存的数据对于key自身状态的相关操作删除指定keydel key获取key是否存在exists key获取key的类型type keykey时效性控制相关操作为key设置有效期expire key seconds //秒pexpire key milliseconds //毫秒expireat key timestamp //时间戳,linux操作
2020-05-19 11:34:06
151
2
原创 [Redis] redis的数据类型
redis起始设计是作为缓存使用的,所以数据类型要根据业务数据的特殊性来确定。(秒杀、排队购票等,运营平台监控到的突发高频访问数据,高频复杂的统计数据如在线人数等)1、string2、hash3、list4、set5、sorted_set
2020-05-15 17:22:07
195
原创 [JVM] 本地方法接口+本地方法栈
本地方法接口什么是本地方法?A native method is a Java method whose implementation is provided bynon-java code.一个Native Method就是Java调用非Java代码的接口。在定义一个native method的时候,并不提实现体,其实现体是由非Java语言在外面实现的。为什么要使...
2020-04-29 13:01:31
419
1
原创 [JVM] 程序计数器(PC寄存器)
一、PC Register介绍参考官方教程:https://docs.oracle.com/javase/specs/jvms/se8/html/index.html
2020-04-07 17:18:40
287
原创 [JVM] 运行时数据区(Runtime Data Area)与线程
内存是非常重要的系统资源,是硬盘和CPU的中间仓库和桥梁,承载着操作系统和应用程序的实时运行。JVM内存布局规定了Java在运行过程中内存申请、分配、管理的策略,保证了JVM的高效稳定运行。不同的JVM对于内存的划分方式和管理机制存在着部分差异。一、JVM运行时数据区结构Java虚拟机定义了若干种程序运行期间会使用到的运行时数据区,其中有一些会随着虚拟机启动而创建,随着虚拟机退出而销毁。...
2020-04-05 17:23:09
159
原创 [JVM] JVM简介
JVM:跨语言的平台Java虚拟机不关心运行在其内部的程序是使用何种编程语言写的,只关心“字节码”文件。只要其他编程语言的编译结果满足并包含Java虚拟机的内部指令集、符号表以及其他的辅助信息,就能被虚拟机识别并装载。特点:1、一次编译,到处运行(跨平台性)2、自动内存管理3、自动垃圾回收功能JVM的位置 JVM是运行在操作系统之上,与硬件没有直接的交互。...
2020-04-03 15:07:09
220
原创 [Java基础] 线程安全
【写在前面】笔记都是看黑马基础班整理的1、线程安全如果有多个线程在同时运行,而这些线程可能会同时运行这段代码。程序每次运行结果和单线程运行的结果是一样的,而且其他的变量的值也和预期的是一样的,就是线程安全的。当我们使用多线程访问同一资源的时候,且对多线程中对资源有写的操作,就容易出现线程安全问题。写一个三个线程同时计数(100—1):主方法(线程同步代码一样)://多线程实现从10...
2020-03-30 15:45:40
121
原创 [Java基础] 线程概念及创建
一、线程的基本概念1、并发及并行并发:两个或者多个事件在同一时间段执行,交替执行并行:两个或者多个事件在同一时刻执行,同时执行2、进程和线程进程:一个内存中运行的程序。(点击应用程序执行,就会进入到内存中,占用一些内存运行)线程:是进程中的一个执行单元,一个进程中至少有一个线程。3、线程调度分时调度:所有线程轮流使用CPU,平均分配每个线程占用CPU的时间。抢占式调...
2020-03-24 14:39:04
100
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人