自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 收藏
  • 关注

原创 Git常用操作整理

Git常用操作集合:查看分支;创建本地分支;切换分支;回退分支等

2022-08-28 01:01:41 165 1

原创 Seata1.4.2+Nacos搭建使用(Linux)

nacos-config.sh脚本中会去找config.txt的位置,如果你的config.conf的位置和nacos-config.sh中的位置不一致,要么改nacos-config.sh文件,要么更换config.conf的位置。这里省略上传Linux,解压等过程,本人seata安装目录为 /usr/local/seata/seata-server-1.4.2。该文件是配置 注册中心和配置中心的,本人用的都是Nacos。该文件是事务日志的相关配置,本人是记录在数据库的。

2022-06-15 17:06:09 842

原创 Git常见操作_02:将远程分支拉取到本地

Git将远程分支取到本地

2022-01-10 15:24:44 1133

原创 Git常见操作_01:新建本地分支,并推送到远程仓库

Git新建本地分支,并推送远程仓库各种情况分析

2022-01-10 15:15:01 1544

原创 MindManager2021合理使用

ManageMind21版合理使用,实测可用,没有垃圾广告

2021-09-07 08:16:38 375 6

原创 Linux安装MySQL5.7

本次安装的是mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz!简洁教程,防忘笔记!!!

2021-06-27 15:46:13 183

原创 Linux安装maven-3.6.3

本次安装的是apache-maven-3.6.3-bin.tar.gz!简洁教程,防忘笔记!!!

2021-06-27 14:07:47 2266

原创 Linux安装Redis5.0.10

本次安装的是redis-5.0.10.tar.gz!简洁教程,防忘笔记!!!

2021-06-27 12:48:56 647

原创 Linux安装部署JDK8

本次安装的是jdk-8u161-linux-x64.tar.gz!简洁教程,防忘笔记!!!1、下载jdk8(1)、官网下载:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html(2)、本人百度网盘:链接:https://pan.baidu.com/s/1Wp1Q1ZVcjPUcJDME5qlJCQ 提取码:795k2、开始部署(1)、解压jdk包,并将解压后的包移至想要存

2021-06-27 11:57:51 2145

原创 Redis主从搭建(哨兵模式),springboot整合redis主从

通过一系列验证,你或许会发现Redis哨兵重新选举主节点后会将这个被选中的节点的redis.conf修改掉,具体的为删掉replicaof 配置项,而原来的主节点则添加replicaof 配置项,并指向新的主节点。虽然redis主从已经搭建完毕,但是当主节点宕机时,从节点并不会接手主节点的工作,只会傻傻得在那里不停地尝试连接主节点。然而这并不是我们想要的,我们希望主节点挂了后,从节点可以顶上去,让服务继续使用。还可以通过sentinel.log日志文件的日志信息查看哨兵的相关配置情况!

2021-04-26 16:56:00 923

转载 Redis持久化过程中,有新写入操作会怎样?----Redis写时复制(copy-on-write)策略

RDB持久化:bgsave触发,Redis调用fork()函数,创建一个子进程(子进程与父进程共内存),子进程执行持久化操作,将内存中的缓存持久化到一个rdb临时文件,待到持久化完成,临时文件替换旧的dump.rdb文件。自此一次RDB持久化操作就完成了。AOF持久化:AOF 持久化时,会将新写入的命令放入aof_buff中,然后检测时间(这个时间就是redis.conf中配置的aof执行频率),再决定是否持久化。当发生aof日志重写时,Redis同样会调用fork()函数,创建一个子进程,对当前内存中.

2021-04-21 14:42:01 2272 3

原创 Redis缓存过期机制,内存淘汰机制

在Redis中有设置过期时间的键值对是如何实现过期删除的呢?在使用redis的时候有没有想过Redis内存不够用的临界点是什么呢?Redis内存不够用时会发生什么呢?Redis缓存过期机制Redis中缓存过期机制包括惰性删除和定期删除:Redis使用的策略是惰性删除+定时删除并用。惰性删除很好理解,所谓的惰性删除其实就是Redis不主动删除过期的键值对,而是在客户端访问的时候去检查该键值对是否过期,若过期,Redis则会删除该键值对并返回null给客户端。惰性删除的情况下,Redis在清除

2021-04-21 10:33:27 229

原创 Redis的数据类型及使用场景

redis

2021-04-19 17:40:53 138

原创 MySQL事务隔离级别

显而易见,这些存储引擎都是有不同的使用场景的,如果表对事物的要求高,应该使用InnoDB引擎,如果表对事物的要求不高,同时是以查询和添加为主,我们考虑使用MyISAM存储引擎或者MEMORY存储引擎。由于我已经回滚,但是读到了回滚前的数据,造成了脏读步骤5的查询结果:步骤7的查询结果: 事务提交后,再次查询,结果与上一步不一致,产生了不可重复读的问题步骤5执行结果:步骤7执行结果:步骤8执行结果:发现了没,在没有update操作,或者select 上加for update时,是没有出现幻

2021-04-19 11:28:13 186

原创 springboot项目中redis客户端(Jedis、Lettuce、Redisson)

一、redis客户端的对比1)、JedisJedis作为Redis官方推荐的一款客户端,也算是简单好用,基础功能齐全,在中小型项目中还是很好用的,但是Jedis是直连模式,在多个线程间共享一个Jedis实例时是线程不安全的。– 为啥不安全呢?不是说Redis是单线程,是世界上最安全的吗?看官不要激动,这里说的不安全不是说Redis处理数据不安全,而是Jedis向Redis服务器提交数据和从Redis上拿数据不安全,简单阅读Jedis的源码就不难发现,在单个Jedis实例中,向Redis推数据的写流(

2021-03-25 16:33:14 3065

原创 ElenmentUI利用el-dialog实现遮罩层

在ElementUI中是没有组件去帮你实现遮罩层的,在这种情况下,我们可以自己去写一个遮罩层组件,或者利用一些现有的资源实现一下。作者是个能省事就省事的人,在碰到这样的开发需求的时候,第一想法就是利用dialog去简单实现一下。不哔哔了,直接上代码<el-dialog title="上传进度" :visible.sync="progressVisible" center lock-scroll :close-on-click-modal="false" <!--是否可以通过点击

2021-03-01 10:54:20 861

原创 spring源码构建-IDEA2020.1构建Spring5.2.x源码

spring源码的版本可能会与gradle有不兼容的情况,为了一次成功,不浪费时间在这个小事情上,咋们下spring源码中推荐的版本。1、下载spring源码github下载地址:https://github.com/spring-projects/spring-frameworkgitee下载地址:https://gitee.com/mirrors/Spring-Framework我用的是gitee下载,因为github下载得太慢了!2、查看spring源码推荐版本其实就算我们不配置gradl

2021-03-01 08:26:09 585

转载 Redis双写一致性问题

1、缓存的最终一致性从理论上来说,给缓存设置过期时间,是保证最终一致性的解决方案。这种方案下,我们可以对存入缓存的数据设置过期时间,所有的写操作以数据库为准,对缓存操作只是尽最大努力即可。也就是说如果数据库写成功,缓存更新失败,那么只要到达过期时间,则后面的读请求自然会从数据库中读取新值然后回填缓存。因此,接下来讨论的思路不依赖于给缓存设置过期时间这个方案。2、数据更新策略(1)先更新数据库,再更新缓存(不可行)存在问题:1)当写操作是否频繁的情况下(多于读操作),可能用户根本就没有去读缓存数据就

2021-02-20 14:26:46 2916

原创 Redis缓存穿透、缓存击穿、缓存雪崩区别和解决方案

1、什么是缓存穿透,缓存击穿,缓存雪崩缓存穿透: key对应的数据在数据源并不存在,并且没有的数据也无法从redis缓存中获取,这时所有对这类key的请求都会直接请求到数据源,从而可能压垮数据源;比如一个不存在的商品id获取商品详情,数据库和redis缓存中都没有,每次请求就会去数据库中去查询,若被黑客利用进行攻击,极有可能压垮数据库。代码示例及解决方法:// 一、若key对应的数据在数据源中不存在,我们在redis缓存中存儲为空,//这个空结果的过期时间尽量设置短些,最好不要超过五分钟,避免下

2021-02-20 10:29:21 307

原创 Redis配置详解

1、一些参数解释somaxconn:在文件/proc/sys/net/core/somaxconn中记录的linux系统参数,定义了系统中每一个端口最大的监听队列的长度,这是个全局的参数,默认值为128;该参数限制了接收新 TCP 连接侦听队列的大小。对于一个经常处理新连接的高负载 web服务环境来说,默认的 128 太小了。大多数环境这个值建议增加到 1024 或者更多。对于一个TCP连接,Server与Client需要通过三次握手来建立网络连接.当三次握手成功后,我们可以看到端口的状态由LISTE

2021-02-19 16:15:20 249

原创 Redis哨兵模式原理讲解

1、哨兵机制图解2、哨兵机制的作用监控(Monitoring): 哨兵(sentinel) 会不断地检查你的Master和Slave是否运作正常。1 ) 每个哨兵节点每10秒会向主节点和从节点发送info命令获取最新拓扑结构图,哨兵配置时只要配置对主节点的监控即可,通过向主节点发送info,获取从节点的信息,并当有新的从节点加入时可以马上感知到2 )每个哨兵节点每隔2秒会向redis数据节点的指定频道上发送该哨兵节点对于主节点的判断以及当前哨兵节点的信息,同时每个哨兵节点也会订阅该频道,来了解其

2021-02-18 21:46:49 323

原创 redis缓存过期、内存淘汰机制

1、redis缓存过期机制Redis可以通过设置一个过期时间expire来处理缓存,Redis删除过期缓存有两种方法:定期删除:Redis会随机抽查key,如果过期则删除,默认配置为1秒10次,也可以提高频率,但是频率越高,cpu压力越大# 定期删除频率配置,表示1秒10次hz 10惰性删除:表示当用户读取Redis缓存时,会检查key是否过期,如果过期则直接删除,这种方法会消耗大量内存去存已过期的键值对总结:以上两种方法优缺很明显,Redis使用的缓存过期机制是:惰性删除加上定期删除,

2021-02-18 08:59:24 326

原创 redis主从复制(读写分离)

1、主从复制服务器架构图2、主从复制的作用数据冗余:主从复制实现了数据的热备份,是持久化之外的一种数据冗余方式。故障恢复:当主节点出现问题时,可以由从节点提供服务,实现快速的故障恢复;实际上是一种服务的冗余。负载均衡:在主从复制的基础上,配合读写分离,可以由主节点提供写服务,由从节点提供读服务(即写Redis数据时应用连接主节点,读Redis数据时应用连接从节点),分担服务器负载;尤其是在写少读多的场景下,通过多个从节点分担读负载,可以大大提高Redis服务器的并发量。高可用基石:主从复制还是

2021-02-14 20:14:25 341 1

转载 reids持久化机制(RDB与AOF)

1、数据持久化过程由上图可知:redis发生故障,只要调用了write系统函数就可以完成数据持久化,因为后两步由操作系统完成;但是操作系统发生故障,则必须以上全部步骤都走完才能算持久化完成。2、RDB机制RDB是把数据以快照的形式保存在磁盘上,既每隔一端时间将redis当前内存的数据备份到dump.rdb文件中,这是的dump.rdb文件就相当于这一时刻的快照。对于这个备份的触发机制有三种:save、bgsave、自动化save触发方式:该命令会阻塞当前Redis服务器,执行save命令期间

2021-02-07 12:49:09 207

原创 Anaconda创建python虚拟环境

1、为什么需要创建python虚拟环境虚拟环境就是借助虚拟机来把一部分内容独立出来,我们把独立出来的东西称为“容器”,在这个容器中,我们只安装我们需要的依赖包,各个容器之间相互隔离,互不影响。譬如,你学习Scrapy框架,就开辟一个独立空间来学习Scrapy框架相关库就行;在实际项目开发中,我们大多时候不会只开发一个项目,有时不同项目所用的框架版本不一致,如果只有一个python环境,则需要来回下载,删除不同版本的包,但是多个虚拟环境则可以完美解决这个问题。2、创建虚拟环境# xxx为你自定义的虚拟

2021-02-03 17:06:26 583

原创 nginx

本人测试配置https#工作进程:数目。根据硬件调整,通常等于CPU数量或者2倍于CPU。数量越大,吞吐量越大worker_processes 16;#工作模式及连接数上限events { # 使用epoll的I/O 模型。linux建议epoll,FreeBSD建议采用kqueue,window下不指定。 use epoll; # 每个工作进程的最大连接数量,根据硬件调整,和前面工作进程配合起来用,尽量大,但是别把cpu跑到100%就行,扩大可提高吞吐量 worker_con

2020-09-07 23:25:38 185

原创 springboot+mybatis-plus实现多数据源配置并使用

所用pom配置<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org

2020-09-06 16:09:54 314 1

原创 ElasticSearch7.8.0下载与安装

ElasticSearch7.8.0下载与安装1、ElasticSearch7.8.0下载官方下载地址:https://www.elastic.co/cn/downloads/elasticsearch链接: https://pan.baidu.com/s/1wAKQoB3nhLhcnBlPfVOLxQ 提取码: t83n2、解压解压elasticsearch-7.8.0-linux-x86_64.tar.gz到/usr/local/目录:# tar -zxvf elasticsearch-7

2020-07-05 15:09:07 4855 7

空空如也

空空如也

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

TA关注的人

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