11 2022 档案

摘要:Docker常用命令1、帮助启动类命令启动docker: systemctl start docker停止docker: systemctl stop docker重启docker: systemctl restart docker查看docker状态: systemctl status docke 阅读全文
posted @ 2022-11-22 18:14 枫叶红时 阅读(104) 评论(0) 推荐(0) 编辑
摘要:1、ACL 1、简介 Redis ACL是Access Control List(访问控制列表)的缩写,该功能允许根据可以执行的命令和可以访问的键来限制某些连接。 在Redis 5版本之前,Redis 安全规则只有密码控制 还有通过rename 来调整高危命令比如 flushdb , KEYS* , 阅读全文
posted @ 2022-11-15 21:47 枫叶红时 阅读(59) 评论(0) 推荐(0) 编辑
摘要:1、问题描述 随着业务发展的需要,原单体单机部署的系统被演化成分布式集群系统后,由于分布式系统多线程、多进程并且分布在不同机器上,这将使原单机部署情况下的并发控制锁策略失效,单纯的Java API并不能提供分布式锁的能力。为了解决这个问题就需要一种跨JVM的互斥机制来控制共享资源的访问,这就是分布式 阅读全文
posted @ 2022-11-15 21:15 枫叶红时 阅读(59) 评论(0) 推荐(0) 编辑
摘要:1、问题描述key对应的数据存在,但在redis中过期,此时若有大量并发请求过来,这些请求发现缓存过期一般都会从后端DB加载数据并回设到缓存,这个时候大并发的请求可能会瞬间把后端DB压垮。缓存雪崩与缓存击穿的区别在于这里针对很多key缓存,前者则是某一个key正常访问缓存失效瞬间2、解决方案缓存失效 阅读全文
posted @ 2022-11-15 21:12 枫叶红时 阅读(18) 评论(0) 推荐(0) 编辑
摘要:1、问题描述key对应的数据存在,但在redis中过期,此时若有大量并发请求过来,这些请求发现缓存过期一般都会从后端DB加载数据并回设到缓存,这个时候大并发的请求可能会瞬间把后端DB压垮。2、解决方案key可能会在某些时间点被超高并发地访问,是一种非常“热点”的数据。这个时候,需要考虑一个问题:缓存 阅读全文
posted @ 2022-11-15 21:12 枫叶红时 阅读(40) 评论(0) 推荐(0) 编辑
摘要:1、问题描述key对应的数据在数据源并不存在,每次针对此key的请求从缓存获取不到,请求都会压到数据源,从而可能压垮数据源。比如用一个不存在的用户id获取用户信息,不论缓存还是数据库都没有,若黑客利用此漏洞进行攻击可能压垮数据库。2、解决方案 一个一定不存在缓存及查询不到的数据,由于缓存是不命中时被 阅读全文
posted @ 2022-11-15 21:11 枫叶红时 阅读(35) 评论(0) 推荐(0) 编辑
摘要:1、什么是集群 Redis 集群实现了对Redis的水平扩容,即启动N个redis节点,将整个数据库分布存储在这N个节点中,每个节点存储总数据的1/N。Redis 集群通过分区(partition)来提供一定程度的可用性(availability): 即使集群中有一部分节点失效或者无法进行通讯, 集 阅读全文
posted @ 2022-11-15 16:25 枫叶红时 阅读(96) 评论(0) 推荐(0) 编辑
摘要:1、什么是哨兵模式反客为主的自动版,能够后台监控主机是否故障,如果故障了根据投票数自动将从库转换为主库2、怎么玩1、调整主从服务器为一主二仆模式,6379主、6380、6381仆2、自定义的/myredis目录下新建sentinel.conf文件,名字绝不能错3、配置哨兵,填写内容sentinel 阅读全文
posted @ 2022-11-14 23:32 枫叶红时 阅读(637) 评论(0) 推荐(0) 编辑
摘要:1、复制原理Slave启动成功连接到master后会发送一个sync命令Master接到命令启动后台的存盘进程,同时收集所有接收到的用于修改数据集命令, 在后台进程执行完毕之后,master将传送整个数据文件到slave,以完成一次完全同步全量复制:而slave服务在接收到数据库文件数据后,将其存盘 阅读全文
posted @ 2022-11-14 16:24 枫叶红时 阅读(79) 评论(0) 推荐(0) 编辑
摘要:1、创建/myredis文件夹2、复制redis.conf配置文件到文件夹中3、配置一主两从,创建三个配置文件redis6379.confredis6380.confredis6381.conf4、在三个配置文件中写入以下内容include /myredis/redis.conf pidfile / 阅读全文
posted @ 2022-11-14 15:28 枫叶红时 阅读(26) 评论(0) 推荐(0) 编辑
摘要:大道至简,知易行难 花径不曾缘客扫,蓬门今始为君开 从今天开始改变,这是对平庸生活最好的回击 你好,我是枫叶红时 😃 阅读全文
posted @ 2022-11-12 16:15 枫叶红时 阅读(18) 评论(0) 推荐(0) 编辑
摘要:IOC:控制反转。控制:对象的创建的控制权限;反转:将对象的控制权限交给spring。之前我们创建对象时用new,现在直接从spring容器中取,维护对象之间的依赖关系,降低对象之间的耦合度。 实现方式为DI,依赖注入,有三种注入方式:构造器、setter、接口注入 阅读全文
posted @ 2022-11-11 23:11 枫叶红时 阅读(40) 评论(0) 推荐(0) 编辑
摘要:AOP:面向切面编程,是一种编程思想。它可以对业务逻辑的各个部分进行隔离,降低耦合,提高代码的可重用性。它的底层是通过动态代理实现的。它的应用场景有事务、日志管理等。 阅读全文
posted @ 2022-11-11 23:11 枫叶红时 阅读(45) 评论(0) 推荐(0) 编辑
摘要:MySQL索引是一种帮助快速查找数据的数据结构,通过索引能够快速找到数据所在位置。场景的索引数据结构有:Hash表(通过hash算法快速定位数据,但不适合范围查询,因为需要每个key都进行一次hash)、二叉树(查找和修改效率都比较高),但是在InnoDB引擎中使用的索引是B+Tree,相较于二叉树 阅读全文
posted @ 2022-11-11 23:10 枫叶红时 阅读(30) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2022-11-11 23:10 枫叶红时 阅读(18) 评论(0) 推荐(0) 编辑
摘要:MySQL 数值型函数函数名称作 用ABS求绝对值SQRT求二次方根MOD求余数CEIL 和 CEILING两个函数功能相同,都是返回不小于参数的最小整数,即向上取整FLOOR向下取整,返回值转化为一个BIGINTRAND生成一个0~1之间的随机数,传入整数参数是,用来产生重复序列ROUND对所传参 阅读全文
posted @ 2022-11-11 23:10 枫叶红时 阅读(18) 评论(0) 推荐(0) 编辑
摘要:抽象类和接口都是为了将方法抽象然后让子类去实现,所以都可以定义抽象方法,都不能实例化本类对象抽象类可以实现接口,接口只能继承接口不能继承类一个类最多只能继承一个父类,但可以实现多个接口抽象类可以定义成员属性,接口不能定义成员属性,只能定义静态属性,而且只能用final关键字定义静态常量,不能定义静态 阅读全文
posted @ 2022-11-11 23:09 枫叶红时 阅读(37) 评论(0) 推荐(0) 编辑
摘要:一共有三种第一种继承thread类第二种实现Runnable接口这两种都是重写run()方法第三种实现Callable接口这种是重写call()方法 阅读全文
posted @ 2022-11-11 23:09 枫叶红时 阅读(29) 评论(0) 推荐(0) 编辑
摘要:内存泄漏是指一个不再被程序使用的对象或变量一直占据在内存中Java有垃圾回收机制,保证对象不再被引用时,将会从内存中清除 阅读全文
posted @ 2022-11-11 23:09 枫叶红时 阅读(24) 评论(0) 推荐(0) 编辑
摘要:强引用(默认支持模式)当内存不足时,JVM开始垃圾回收,对于强引用对象,就是出现了OOM也不会对该对象进行回收以new关键字创建的对象都是强引用Object obj1 = new Object(); // 这样定义的默认就是强引用Object obj2 = obj1; // obj2引用赋值obj1 阅读全文
posted @ 2022-11-11 23:09 枫叶红时 阅读(132) 评论(0) 推荐(0) 编辑
摘要:继承、封装、多态封装将对象的状态信息隐藏在对象内部,不允许外部程序直接访问对象内部信息,让外部程序通过该类提供的方法来实现对内部信息的操作,提高了代码的可维护性继承:通过extends实现类的继承,实现继承的类被称为子类,被继承的类被称为父类,实现了代码复用多态的实现离不开继承,在设计程序时,我们可 阅读全文
posted @ 2022-11-11 23:07 枫叶红时 阅读(29) 评论(0) 推荐(0) 编辑
摘要:1、悲观锁悲观锁(Pessimistic Lock), 顾名思义,就是很悲观,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会block直到它拿到锁。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。2、 阅读全文
posted @ 2022-11-11 23:02 枫叶红时 阅读(50) 评论(0) 推荐(0) 编辑
摘要:单独的隔离操作 事务中的所有命令都会序列化、按顺序地执行。事务在执行的过程中,不会被其他客户端发送来的命令请求所打断 没有隔离级别的概念 队列中的命令没有提交之前都不会实际被执行,因为事务提交前任何指令都不会被实际执行 不保证原子性 事务中如果有一条命令执行失败,其后的命令仍然会被执行,没有回滚 阅读全文
posted @ 2022-11-11 23:01 枫叶红时 阅读(53) 评论(0) 推荐(0) 编辑
摘要:Redis事务是一个单独的隔离操作:事务中的所有命令都会序列化、按顺序地执行。事务在执行的过程中,不会被其他客户端发送来的命令请求所打断。 Redis事务的主要作用就是串联多个命令防止别的命令插队。 1、Multi、Exec、discard从输入Multi命令开始,输入的命令都会依次进入命令队列中, 阅读全文
posted @ 2022-11-11 22:59 枫叶红时 阅读(19) 评论(0) 推荐(0) 编辑
摘要:1、Bitmaps1、简介现代计算机用二进制(位) 作为信息的基础单位, 1个字节等于8位, 例如“abc”字符串是由3个字节组成, 但实际在计算机存储时将其用二进制表示, “abc”分别对应的ASCII码分别是97、 98、 99, 对应的二进制分别是01100001、 01100010和0110 阅读全文
posted @ 2022-11-11 22:58 枫叶红时 阅读(81) 评论(0) 推荐(0) 编辑
摘要:1、Jedis所需要的jar包<dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>3.2.0</version></dependency>2、连接Rdis注意事项禁用Linux的防 阅读全文
posted @ 2022-11-11 22:58 枫叶红时 阅读(15) 评论(0) 推荐(0) 编辑
摘要:public class PhoneCode { public static void main(String[] args) { //模拟验证码发送 verifyCode("12345678901"); //getRedisCode("12345678901","012170"); } //3 校 阅读全文
posted @ 2022-11-11 22:58 枫叶红时 阅读(36) 评论(0) 推荐(0) 编辑
摘要:1、依赖导入<!-- redis --><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId></dependency><!-- 阅读全文
posted @ 2022-11-11 22:58 枫叶红时 阅读(21) 评论(0) 推荐(0) 编辑
摘要:1、什么是发布和订阅Redis 发布订阅 (pub/sub) 是一种消息通信模式:发送者 (pub) 发送消息,订阅者 (sub) 接收消息。 Redis 客户端可以订阅任意数量的频道。 2、Redis的发布和订阅客户端可以订阅频道如下图当给这个频道发布消息后,消息就会发送给订阅的客户端3、实现打开 阅读全文
posted @ 2022-11-11 22:57 枫叶红时 阅读(277) 评论(0) 推荐(0) 编辑
摘要:1、String1、简介String类型是二进制安全的,意味Redis的String可以包含任何数据,比如jpg图片或者序列化的对象一个Redis字符串中value最多可以是512M2、常用命令set <key> <value> 添加键值对get <key> 查询对应键值 append <key> 阅读全文
posted @ 2022-11-11 22:56 枫叶红时 阅读(62) 评论(0) 推荐(0) 编辑
摘要:1,前台启动(不推荐)redis-server2、后台启动进入解压后的redis-6.2.1文件夹cd /opt/redis-6.2.1复制redis.conf文件到etc目录,名字文redis.confcp redis.conf /etc/redis.conf将文件中daemonize no改为y 阅读全文
posted @ 2022-11-11 22:48 枫叶红时 阅读(1281) 评论(0) 推荐(0) 编辑
摘要:1、先安装gcc环境,因为Redis需要在C语言环境下编译2、Redis安装1、使用以下命令将预先上传的Redis压缩包解压tar -zxvf redis-6.2.1.tar.gz 2、进入解压后的redis-6.2.1文件夹cd redis-6.2.1 3、将Redis编译为C文件make4、完成 阅读全文
posted @ 2022-11-11 22:37 枫叶红时 阅读(35) 评论(1) 推荐(0) 编辑
摘要:提交到暂存区:git add .提交到本地: git commit -m "此处写消息"1,创建全新的仓库git init2,克隆远程仓库git clone [url]3,查看指定文件状态git status [filename]4,查看所有文件状态git statusGit分支中常用命令#列出所有 阅读全文
posted @ 2022-11-11 22:26 枫叶红时 阅读(24) 评论(0) 推荐(0) 编辑

阅读目录(Content)

此页目录为空

点击右上角即可分享
微信分享提示