自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 JAVA 多线程

本文记载Java多线程相关知识,适合面试人员查看

2024-04-15 22:10:50 771

原创 ArrayList和HashMap详解

文章详细介绍了ArrayList和HashMap底层实现原理以及扩容机制,包括常见面试题

2024-04-13 14:03:36 892

原创 IDEA启动Springboot项目卡死(debug方式启动)

Method breakpoints may dramatically slow down debugging。

2022-11-04 14:44:39 3524 4

原创 Vue项目控制台报错:‘Do not use built-in or reserved HTML elements as component id:XXX‘

Vue项目运行后页面加载,控制台报错Donotusebuilt-inorreservedHTMLelementsascomponentidXXX。上述英文错误翻译不要使用内置或保留的HTML元素作为组件id。错误修改方式不要将组件命名为内置关键字或标签名或元素名。......

2022-07-26 11:42:59 611

原创 SpringBoot或SpringMVC【单字母驼峰命名转换】

前后端参数交互时涉及单字母驼峰命名错误

2022-06-13 16:07:31 1267

原创 ORA-00909: 参数个数无效,concat引起

Oracle只支持每次两个字符串的拼接,而类似concat(‘%’,#{param},‘%’)属于三个字符串的拼接,因此报错参数个数无效嵌套两次concat

2022-06-06 16:40:52 1515 1

原创 java: Can‘t generate mapping method from non-iterable type to iterable type

在项目编译时报错:java: Can’t generate mapping method from non-iterable type to iterable type无法生成从非iterable类型到iterable类型的映射方法错误原因:导错jar包导致例如@Mapper这个注解,在Dao层应该使用Mybatis提供的jar,结果不小心导成了Mapstruct提供的jar,导致该错误解决方法: 检查所依赖的类是否是目标jar所提供的的,排除部分jar中存在重名类所导致意外错误...

2022-05-19 09:44:45 8710

原创 SpringBoot/Cloud项目中无法识别到bootstrap.properties

在SpringCloud项目中配置会记录在配置中心,那么在项目启动时,要告诉程序配置中心在哪,此时就使用bootstrap.properties,它的启动顺序要早于application.properties无法读取到bootstrap.properties编译或install后,检查target里面没有bootstrap.properties,初步判定为maven编译时将该文件过滤了解决方法<build> <resources> .

2022-05-12 08:57:37 2183

原创 ThingsBoard-Windows安装(包括zip方式和源码方式)

手把手带你安装thingsboard,包括两种安装方式,zip安装包方式和源码编译安装,希望我的文章能带你出坑

2022-04-29 14:36:18 2348

原创 动态演示数据结构

记录一个可以动态模拟数据结构的地址,便于理解各种数据结构动态演示数据结构

2022-02-23 13:59:45 412

原创 【Mysql运维篇】

主要讲解Mysql各类日志、主从复制、读写分离、分库分表运维篇日志错误日志介绍错误日志是mysql中最重要的日志之一,它记录了当mysql启动和停止时,以及服务器在运行过程中发生任何严重错误时的相关信息。当数据库出现任何故障导致无法正常使用时,建议先查看此日志该日志默认开启,默认存放目录/var/log,默认的日志文件名为mysqld.log。查看日志位置:show variables like '%log_error%';二进制日志介绍二进制日志(binlog)记录了所有.

2022-02-23 13:55:42 623

原创 【Mysql进阶篇】

本篇覆盖内容:存储引擎、索引、SQL优化、视图、存储过程、触发器、InnoDB、Mysql管理进阶篇存储引擎Mysql体系结构连接层:最上层是一些客户端和链接服务,主要完成一些类似于连接处理、授权认证及相关的安全方案,服务器也会为安全接入的每个用户端验证它所具有的操作权限服务层:第二层架构主要完成大多数的核心服务功能,如SQL接口,并完成缓存的查询,SQL的分析和优化,部分内置函数的执行。所有跨存储引擎的功能也是在这一层实现,如过程,函数等引擎层:存储引擎真正的负责了Mysql中数据的存.

2022-02-23 09:34:45 698

原创 【Mysql基础篇】

本篇主要记录Mysql日常使用中的基本增删改查及基础概念,适合初学者入门基础篇Mysql概述相关概念名称说明简介数据库存储数据的仓库,数据是有组织的进行存储DataBase(DB)数据库管理系统操纵和管理数据库的大型软件DataBase Management System(DBMS)SQL操作关系型数据库的编程,定义了一套操作关系型数据库统一标准Structured Query Languahe(SQL安装Mysql官方提供两种版本:社区.

2022-02-23 09:23:10 336

原创 Redis启动哨兵报错:Invalid argument during startup: unknown conf file parameter :

报错原因sentinel.conf中存在不可见的空格、空行之类的解决方法删除所有空格、空行,然后重启

2021-10-20 18:02:01 1098

原创 Redis启动哨兵报错:sentinel directive while not in sentinel mode

windows下启动哨兵报错:sentinel directive while not in sentinel mode控制台显示:*** FATAL CONFIG FILE ERROR ***Reading the configuration file, at line 2>>> 'sentinel monitor mymaster 127.0.0.1 6379 2'sentinel directive while not in sentinel mode错误原因启动.

2021-10-20 17:53:34 1188

原创 Redis系列之删除策略

删除策略过期数据redis是一种内存级数据库,所有数据均存放在内存中,内存中的数据可以通过TTL指令获取其状态XX :具有时效性的数据-1:永久有效的数据-2:已经过期的数据或被删除的数据或未定义的数据问题:过期的数据真的删除了吗?不是,redis数据过期后只是客户端无法访问该数据,而该数据其实还在内存中,什么时候删除取决于删除策略数据删除策略时效性存储结构当我们在redis中存储一个key并设置其过期时间是redis是怎么做处理的?如下图:[外链图片转存失败,源站可能有防盗链

2021-09-30 17:13:15 181

原创 Redis系列之锁

锁对key添加监视锁,在执行exec前如果key发生了变化,终止事务执行watch key1 [key2 …]取消所有key的监视unwatch基于特定条件的事务执行-分布式锁应用场景:超卖问题使用setnx设置一个公共锁setnx lock-key value利用setnx命令返回值特征,有值则返回,无值则返回设置成功返回成功,获得锁进行业务操作返回失败,获取锁失败,排队等待释放锁,删除lock-key上述分布式锁存在的问题,假如客户端1加锁成功,在释放锁

2021-09-30 17:12:39 131

原创 Redis系列之事务

Redis事务事务简介什么是事务redis执行指令过程中,多条连续执行的指令被干扰,打断,插队redis事务就是一个命令执行的队列,将一系列预定义命令包装成一个整体,当执行时一次性按照添加顺序依次执行,中间不会被打断或干扰Redis单条命令保存是原子性的,但事务不保证原子性Redis没有隔离级别的事务(所有命令在事务中并没有被直接执行,只有发起执行命令才会执行 Exec)事务特征:一次性、顺序性、排他性事务基本操作事务命令开启事务multi设定事务的开启位置,此指令执

2021-09-30 17:12:10 109

原创 Redis系列之持久化

Redis持久化持久化简介什么是持久化利用永久性存储介质将数据进行保存,在特定的时间将保存的数据进行恢复的工作机制称为持久化为什么持久化防止数据的意外丢失,确保数据安全性持久化过程保存什么将当前数据状态进行保存以快照形式,存储数据结果,存储格式简单,关注点在数据将数据的操作过程进行保存以日志形式,存储操作过程,存储格式复杂,关注点在数据的操作过程RDBRDB其实就是把数据以快照的形式保存在磁盘上。什么是快照呢,你可以理解成把当前时刻的数据拍成一张照片保存下来。R

2021-09-30 17:11:33 112

原创 Redis系列之Jedis

JedisJedis简介java连接redis服务的连接工具同类:spring data redis、lettuceJedis入门引入依赖<dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.9.0</version></dependency>入

2021-09-30 17:10:59 155

原创 Redis系列之通用指令

Redis通用指令key通用操作key是一个字符串,通过key获取redis中保存的数据key应该设计哪些操作?对于key自身状态操作,如删除、是否存在、获取类型等key时效性相关操作,如有效期判定等key快速查询操作,如指定策略查询key…key基本操作删除keydel keykey是否存在exists keykey类型type keykey扩展操作时效性控制指定key设置有效期expire key secondspexpire

2021-09-30 17:10:17 90

原创 Redis系列之数据类型

Redis数据类型数据存储类型redis数据类型类比java数据类型redis类型java类型stringStringhashHashMaplistLinkedListsetHashSetsorted_setTreeSetredis是一个Map存储结构,其中所有的数据都是采用key:value的形式存储上述的五种存储类型,指的是value的类型string数据:单个数据数据格式:一个存储空间保存一个数据存储内容:通常使用字符串,如

2021-09-30 17:09:32 132

原创 Redis系列之下载与安装

Redis下载与安装Windows安装**下载地址:**https://github.com/tporadowski/redis/releasesRedis 支持 32 位和 64 位。这个需要根据你系统平台的实际情况选择,这里我们下载 Redis-x64-xxx.zip压缩包下载完成后解压到自定义目录下:在解压路径下,打开cmd窗口,执行命令:redis-server.exe redis.windows.confredis.windows.conf可省略,不指定配置文件时,默认就是读它,

2021-09-29 18:08:22 81

原创 Redis系列之简介

Redis简介NoSqlNoSql:即Not-Only SQL(泛指非关系型数据库),作为关系型数据库的补充特征:可扩容,可伸缩大数据量下高性能灵活的数据类型高可用常见NoSql数据库:RedisMemcacheHbaseMongoDBRedis应用场景缓存热点信息(高频、波段性)Redis概念:Redis(Remote Dictionary Server)是C语言开发的一个开源的高性能键值对(key-value)数据库特征:数据间没有必然的关联关系内部采用单

2021-09-29 18:04:44 73

原创 npm install过程报错:Maximum call stack size exceeded

记一次vue项目npm install过程报错:Maximum call stack size exceededMaximum call stack size exceeded:超过最大调用堆栈大小错误原因scripts中存在很多递归调用,比如Module1依赖module2,而Module2又依赖了Module1,或者包与包之间的依赖关系复杂解决方法删除node_module文件夹和package-lock.json文件npm cache clean --forcenpm instal.

2021-09-29 11:07:40 1007

原创 maven远程仓库jar无法下载

问题:本地仓库不存在jar包,但并不会去远程仓库拉取?原因:本地仓库中对应jar目录下存在XXX.lastUpdated,则不会去远程拉包解决方式删除XXXX.lastUpdated后,重新构建项目.lastUpdated文件产生原因jar包自身的问题(groupId发生改变或artifactId改变,所需要的版本不存在等),这是最重要的一点,很多人找了半天问题,最后才发现自己找的jar本来就不存在。网络问题,无法下载对应的jar。maven中setting配置的中央仓库镜像出现问题,没有

2021-09-28 17:16:20 1180

原创 Maven中mirror和repository区别和关联

本文将介maven配置settings.xml中比较重要的两项配置mirror和repository区别和关联参考:https://my.oschina.net/sunchp/blog/100634总结:当配置多个mirror时按顺序访问,只有第一个有效,当第一个无法访问时,才会去访问第二个mirrormirror中的和repository中对应,当访问repository配置的仓库时,会去访问mirror中url配置的镜像库 1. <mirrorOf>*</mirror.

2021-09-28 16:51:44 1217

原创 mavne报错:Failure to find XXX.jar in http://XXXXXX was cached in the local repository, resolution will

maven在切换settings.xml或者修改仓库后,在项目运行或构建时会报错报错如下:Failure to find XXX.jar in http://XXXXXX was cached in the local repository, resolution will not be reattempted until the update interval of nexus has elapsed or updates are forced -> [Help 1]解决方案切换目录到.

2021-09-28 16:12:42 2055

原创 RabbitMQ系列之利用nginx搭建MQ高可用集群

上一节学习了如何搭建RabbitMQ集群,实现了数据不丢失,那么我们在代码中配置时应该配置哪个节点呢?万一配置的节点宕机岂不是还是存在单点故障利用Nginx实现RabbitMQ集群负载修改nginx配置nginx.confhttp { #rabbit集群配合 upstream rabbitmq-cluster{ server 127.0.0.1:5672; server 127.0.0.1:5673; } server { listen 80; .

2021-09-27 15:43:45 1773

原创 搭建RabbitMQ集群报错:Authentication failed (rejected by the remote node), please check the Erlang cookie

原因:集群中节点未统一配置.erlang.cookie ,RabbitMQ的集群是依赖erlang集群,而erlang集群是通过cookie进行通信认证的解决方案:将各个节点.erlang.cookie中的cookie统一,用其中一个节点的cookie覆盖其他的cd /var/lib/rabbitmqvim .erlang.cookie修改之后,请重启机器...

2021-09-26 15:28:55 1568

原创 搭建RabbitMQ集群报错:rabbitmq unable to connect to epmd (port 4369) on xxx: address (cannot connect to hos

原因:找不到对应的hostName解决方案:在某节点中应配置所有节点的hostsvim /etc/hosts例如:172.17.0.3 rabbit1172.17.0.2 rabbit2

2021-09-26 15:24:45 1528

原创 RabbitMQ系列之集群搭建

RabbitMQ集群搭建RabbitMQ集群介绍rabbitmq有3种运行模式:单机模式单独运行一个rabbitmq普通集群模式默认模式,该模式并不能达到高可用的目的,以两个节点(rabbit01、rabbit02)为例来进行说明。对于Queue来说,消息实体只存在于其中一个节点rabbit01(或者rabbit02),rabbit01和rabbit02两个节点仅有相同的元数据,即队列的结构。当消息进入rabbit01节点的Queue后,consumer从rabbit02节点消费时,Rabbi

2021-09-26 13:46:55 418

原创 RabbitMQ系列之消息可靠性保障、消息幂等性保障

RabbitMQ应用问题消息可靠性保障消息补偿机制,100%确保消息发送成功图解:Producer处理业务并操作数据库,然后向Q1发送消息Consumer监听Q1中的消息,做对应的业务处理,并操作数据库,如果处理成功,向Q2发送消息回调检查服务监听Q2确认消息,将消费成功的记录写入MDB中(消费记录表)回调检查服务监听Q3延迟队列,收到消息后去MDB确认该消息是否成功消费,如果未成功消费,则调用Producer服务重新发送消息(流程从头再来),如果已成功消费则不作操作定时检查服务,每

2021-09-26 13:40:59 324

原创 RabbitMQ系列之消费限流、TTL、死信队列、延迟队列

RabbitMQ高级特性消费限流什么是消费端限流场景:假设MQ服务器接收很多未处理的消息,这些消息会瞬间打在消费者客户端,当接收到如此巨量的消息客户端是无法处理的,所以就需要在MQ和消费者之间做个限流,在消费者进行消费时限制消费流量解决方案:RabbitMQ提供了一种qos(服务质量保证)功能,在非自动确认消息的前提下,设置channel或queue的预处理流量,进而来限流,方法如下:void BasicQos(uint prefetchSize,ushort prefetchCount,

2021-09-26 13:38:22 339

原创 RabbitMQ系列之消息的可靠性

代码地址:https://gitee.com/webprogram/springboot_rabbit在使用RabbitMQ的时候,作为消息发送方希望杜绝任何消息丢失或者投递失败的场景,RabbitMQ为我们提供了两种方式来控制消息的可靠性confirm确认模式,开机交换机应答return退回模式,开启队列应答RabbitMQ从生产到消费链路如下:producer-> rabbitmq broker->exchange->queue->consumer消息从生产.

2021-09-25 11:31:04 682

原创 RabbitMQ系列之springboot整合rabbitmq

前面章节学习都是基于spring,配置麻烦,现在生产中也没人那么使用,下面讲解基于springboot来操作MQ代码地址:https://gitee.com/webprogram/springboot_rabbitSpringBoot整合RabbitMQ引入依赖<dependencies> <dependency> <groupId>org.springframework.boot</groupId>

2021-09-25 11:28:54 99

原创 RabbitMQ系列之工作模式

RabbitMQ的工作模式Work queues 工作队列模式模式说明如图所示,一个队列对应多个消费者,C1和C2属于竞争关系,同一条消息要么被C1消费,要么被C2消费总结:Work queues多个消费端共同消费同一队列中的消息应用场景:对于任务过重或者任务较多情况下使用工作队列可以提高任务处理速度生产者public class MessageProducer { public static void sendMessage() throws IOException, Timeo

2021-09-19 18:38:43 193

原创 RabbitMQ系列之快速入门,Rabbit简单模式

RabbitMQ快速入门入门程序需求:使用简单模式完成消息传递步骤:创建工程(生产者、消费者)分别添加依赖编写消费者发送消息编写消费者接收消息创建maven项目,导入依赖 <!-- rabbitMq 客户端依赖 --> <dependency> <groupId>com.rabbitmq</groupId> <artifactId>amqp-client&lt

2021-09-19 18:32:14 161

原创 RabbitMQ系列之安装和配置

RabbitMQ的安装和配置RabbitMQ官网地址:https://www.rabbitmq.com/RabbitMQ下载地址:https://www.rabbitmq.com/download.html基于Windows安装:https://www.rabbitmq.com/install-windows.html因为RabbitMQ是基于erlang开发的,安装时要注意erlang版本,具体版本对应关系:https://www.rabbitmq.com/which-erlang.htmld

2021-09-19 18:29:45 138

原创 RabbitMQ系列之RabbitMQ简介

RabbitMQ简介AMQPAMQP,即Advanced Message Queuing Protocol,一个提供统一消息服务的应用层标准高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计。基于此协议的客户端与消息中间件可传递消息,并不受客户端/中间件不同产品,不同的开发语言等条件的限制。类比HTTPRabbitMQ架构及概念RabbitMQ基础架构:RabbitMQ中的相关概念:Broker:接收和分发消息的应用,RabbitMQ Server就是Message

2021-09-19 18:26:43 179

空空如也

空空如也

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

TA关注的人

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