自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 执行docker login 时报错Error saving credentials: error storing credentials

【代码】执行docker login 时报错Error saving credentials: error storing credentials。

2023-12-06 15:01:48 2125

原创 从零开始构造一个Operator(保姆级教程)

项目地址:https://github.com/kosmos-io/simple-controller。

2023-11-30 09:47:30 2088 1

原创 kubeadm 重新生成证书

路径下,kubeadm 生成的证书默认有效为 1 年,因此需要定时更新证书,否则证书到期会导致整个集群不可用。完成证书和配置文件的更新后,需要进行一系列后续操作保证更新生效,主要包括重启 kubelet、api-server、schedule等更新管理配置。Kubenetes 在升级控制面板相关组件时会主动更新证书,因此如果保证 Kubernetes 能够定期(一年以内)升级的话,证书会自动更新。将新生成的 admin.conf 文件拷贝,替换 ~/.kube 目录下的 config 文件。

2023-11-21 17:59:27 634

原创 Unable to connect to the server: x509: certificate is valid for问题解决

我们的kubernetes的apiserver-advertise-address是一个内网IP,默认情况下,kubernetes自建的CA会为apiserver签发一个证书,证书的默认可访问的是内网IP、kubernetes、kubernetes.default kubernetes.default.svc、kubernetes.default.svc.cluster.local,不包含设备的外网IP。通过如下命令查看kubernetes的admin.conf中的证书的有效期,看是否有效。

2023-10-23 23:10:20 3415

原创 WARNING: undefined behavior - version of Delve is too old for Go version

如果忘记了 GOPATH 是什么,输入 go env GOPATH 即可。在更新了 go 版本后,使用 goland 进行调试会报错。这是因为 go 的版本升级后,相对 dlv 的版本就低了。在 GOPATH 对应目录下安装最新版的 dlv。打开 Goland 菜单栏 Help 下的。所以解决办法就是升级对应的 dlv 版本。进入到 GOPATH 中。安装完毕后,其被安装在。,会自动打开一个文件。

2023-08-17 17:49:28 2314 2

原创 创建好的VMware虚拟机如何连接上外网?MobaX和XShell如何连接虚拟机

remote host设置为你刚刚的IPADDR。首先点击VMware菜单栏,,并记住子网IP之后有用。

2023-08-10 10:33:49 512

原创 YAML文件语法

yaml是一种简洁的非标记语言,YAML以数据为中心,使用空白,缩进,分行组织数据,从而使得表示更加简洁易读。— 为可选的分隔符 ,当在一个文件中定义多个结构时需要。因为工作需要学习K8s,故得学习一下yaml语法。如果要把多个kind写于一个文件需要用到。在k8s的yaml中比较少见。以上就是yaml的语法。

2023-07-28 09:49:56 325

原创 Docker安装与完全卸载(这一篇绝对够用)

这个命令会停止所有容器,包括正在运行的容器和已经停止的容器。

2023-07-18 10:48:36 54152 4

原创 Xshell连接不上虚拟机的解决办法(给他最后一次机会)

如果你之前的操作都没问题的话Xshell还是连接不上我们的虚拟机,可以试试这个方法。点VM中的 编辑–>虚拟网络编辑器–还原默认设置**(这个方法也特别有效)**

2023-07-07 09:55:31 851

原创 Druid(德鲁伊)数据库连接池

存在内存泄漏问题:每次连接都需要断开连接,如果不断开,程序运行结束,会有创建的连接对象存在内存中一直无法关闭,就会导致java内存泄漏的问题。是阿里提供的数据库连接池,据说是集DBCP 、C3P0 和Proxool 优点于一身的数据库连接池,它是目前国内用到最多的数据库连接池技术。事先在内存中建立一个缓冲池,用来存放一定数量的连接对象,需要时在里面调用,结束时放回缓冲池。Druid:阿里提供的连接池,速度快(不及BoneCP),稳定性好,有监控连接池的功能。连接池中的对象需要时取出,不需要被连接池回收。

2023-02-02 14:43:14 1505 1

原创 fastjson:对象转化成json出现$ref

我们可以将List中的对象使用BeanUtil这样的工具,拷贝为新的对象。(BeanUtil创建出来的对象跟原来的对象不是同一个对象)但是因为全局配置是在我们项目的基础jar包中配置的,改动基础jar包会有风险,会对前面所有的依赖项目产生影响。所以也不采用这种方式。:即A对象引用B对象,B对象又引用A对象,这种情况是要极力避免的,因为会导致堆栈溢出(StackOverflowError);如果循环引用的数据,前端用不到,那可以在实体类对应的字段加注解禁止序列化,这样前端就不会接收到这个字段的引用数据了。

2023-01-11 11:46:31 1529 1

转载 讲透JAVA Stream的collect用法与原理

前面我们演示了很多Collectors工具类中提供的收集器的用法,上一节中列出来的Collectors提供的常用收集器,也可以覆盖大部分场景的开发诉求了。但也许在项目中,我们会遇到一些定制化的场景,现有的收集器无法满足我们的诉求,这个时候,我们也可以自己来实现定制化的收集器。我们知道,所谓的收集器,其实就是一个Collector接口的具体实现类。所以如果想要定制自己的收集器,首先要先了解Collector接口到底有哪些方法需要我们去实现,以及各个方法的作用与用途。接口名称功能含义说明。

2023-01-09 11:30:47 636

转载 吃透JAVA的Stream流操作

如果纯粹是个String字符串拼接的诉求,确实没有必要使用Stream来实现,毕竟杀鸡焉用牛刀嘛~ 但是可以看看下面给出的这个示例,便可以感受出使用Stream进行字符串拼接的真正魅力所在。因为Stream主要用于对集合数据的处理场景,所以除了上面几种获取简单结果的终止方法之外,更多的场景是获取一个集合类的结果对象,比如List、Set或者HashMap等。并行流类似于多线程在并行处理,所以与多线程场景相关的一些问题同样会存在,比如死锁等问题,所以在并行流终止执行的函数逻辑,必须要保证线程安全。

2023-01-06 14:17:20 320

转载 ConfigurationProperties注解详解

根据以上总结看到@ConfigurationProperties的几种使用方式@Configuration //可以换成@Component @ConfigurationProperties(prefix = "mail") public class ConfigProperties {} }注:未指定@Configuration注解,需要在启动类加@EnableConfigurationProperties注解} }

2023-01-05 15:09:15 5429

转载 RSA加密算法原理

【代码】RSA加密算法原理。

2022-12-20 15:57:27 223

原创 Base64编码剖析

百度百科中对Base64有一个很好的解释:“Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法”。它实际上是一种“二进制转换到文本”的编码方式。什么是“可打印字符”呢?为什么要用它来传输8Bit字节码呢?在回答这两个问题之前我们有必要来思考一下什么情况下需要使用到Base64?Base64一般用于在HTTP协议下传输二进制数据,由于HTTP协议是文本协议,所以在HTTP协议下传输二进制数据需要将二进制数据转换为字符数据。

2022-12-20 14:30:00 3811

转载 Bean实例化(Instantiation)多种方式

ServiceLoaderFactoryBean使用的是ServiceLoader,ServiceLoader默认读取的是/META-INF/services/下的文件,而value="org.example.factory.UserFactory"刚好就是文件名,从而serviceType获取到的是文件内存储的UserFactory的所有实现类全路径,通过ServiceLoader.load(getServiceType(), this.beanClassLoader)方法加载得到了bean对象。

2022-12-15 15:18:02 479

原创 java Logger.error打印错误异常的详细堆栈信息

使用Logger.error(e)、Logger.error(e.getMessage())、Logger.error(“some msg” + e)、Logger.error(“some msg” + e.getMessage()) 都是调用的error(Object message),这个方法都会将入参当作Object输出,不会打印堆栈信息。根据方法重载特性,当只输入一个参数时,此对象会被当做Object进行打印输出,如果是Exception e的话,这里直接就toString()。

2022-12-15 13:46:16 3771

原创 Java Timer(定时器)

schedule(TimerTask task , Date time) // 安排在 "指定的时间" 执行 指定的任务。

2022-12-14 16:53:56 8075

转载 mysql的日期时间类型及精度问题

本文主要整理mysql提供的五种日期时间类型time、date、datetime、timestamp和year的区别,及日期时间类型的精度问题一次线上bug, mysql数据类型为timestamp,日志中打印的时间为2021-02-23 10:16:55.781 但是最后数据库中存储的是2021-02-23 10:16:56,由此引发了本文对timestamp精度问题的研究。

2022-12-13 14:33:33 3160

转载 Springboot发送邮件

1、以QQ邮箱为例,页面首部找到设置。2、开启POP3/SMTP服务。

2022-12-09 17:26:36 378

转载 MySQL插入数据insert ignore,重复数据自动忽略

MySQL中插入数据,如果插入的数据在表中已经存在(主键或者唯一键已存在),使用insert ignore 语法可以忽略插入重复的数据。

2022-12-08 15:37:23 1053

转载 mysql replace的死锁分析

https://blog.csdn.net/zht245648124/article/details/126511945

2022-12-08 15:09:07 160

转载 Mysql中S 锁和 X 锁的区别

事务 T1 对记录 R1 加上了 S 锁,那么事务 T1 可以读取 R1 这一行记录,但是不能修改 R1,其他事务 T2 可以继续对 R1 添加 S 锁,但是不能添加 X 锁,只有当 R1 上面的 S 锁释放了,才能加上 X 锁。如同它的名字,X 锁是具有排他性的,即一个写锁会阻塞其他的 X 锁和 S 锁。在可重复读的隔离级别下,事务启动的时候,就会针对当前库拍一个照片(快照),快照读读取到的数据要么就是拍照时的数据,即事务开启那一瞬间数据库中的数据,要么就是当前事务自身插入/修改过的数据。

2022-12-08 14:32:40 585

原创 JUC之Phaser

Phaser是一个灵活的线程同步工具,他包含了CyclicBarrier和CountDownLatch的相关功能。题目:5个学生一起参加考试,一共有三道题,要求所有学生到齐才能开始考试,全部同学都做完第一题,学生才能继续做第二题,全部学生做完了第二题,才能做第三题,所有学生都做完的第三题,考试才结束。分析这个题目:这是一个多线程(5个学生)分阶段问题(考试、第一题做完、第二题做完、第三题做完、结束),所以很适合用Phaser解决这个问题。MyPhaser类继承自Phaser,重写了每个阶段完成以后的自动调用

2022-12-05 14:40:17 188

原创 Maven dependencyManagement 详解及一些问题

Maven中的《依赖管理器》元素提供了一种管理依赖版本号的方式。在《依赖管理器》元素中声明所依赖的jar包的版本号等信息,那么所有子项目再次引入此依赖jar包时则无需显式的列出版本号。Maven会沿着父子层级向上寻找拥有《依赖管理器》元素的项目,然后使用它指定的版本号。《依赖管理器》中的依赖必须明确的指定依赖版本号,不然子模块引入该依赖后,将继承父模块《依赖管理器》中的设置,如果父模块的《依赖管理器》中没有设置依赖的版本号, 会导致子模块无法下载该依赖。

2022-11-03 10:53:45 352

原创 为什么1月在Java日历中为0?

您可以通过在添加月份之前减去 1 来再次完成所有这些工作,然后进行模数运算,最后再次加 1 …也就是解决一个潜在的问题。12 月后的 1 个月是 1 月,但要正常计算出这一点,您必须使用月份数并进行数学运算。我可以通过使用 12 的模数来快速解决这个问题。现在让我们考虑一下 0 - 11 个月的问题。这可以正常工作 11 个月,直到 11 月…因为用月份做数学要容易得多。

2022-11-01 17:54:25 231

原创 Mysql复制表结构与表数据

1、直接使用工具,比如navicat直接对表Ctrl + c 、 Ctrl + v;注意:不同的方式复制出来的表包含内容不一样哦!根据自己的需求选择就好!快速复制一个表 copy(表 tb_a 复制为 tb_a_copy)2、直接创建并复制数据,但是仅仅包含结构与数据,没有索引等其他内容;4、直接查询出改表的创建语句,包括了外键、索引等等等;3、复制旧表的主键、索引、但是不包含触发器、外键。环境:Mysql5.7。

2022-10-31 13:54:36 607

原创 MySQL中查询、删除重复记录的方法大全

2、删除表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断,只留有rowid最小的记录。1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断。4、删除表中多余的重复记录(多个字段),只留有rowid最小的记录。2、保留一条(这个应该是大多数人所需要的 _)3、查找表中多余的重复记录(多个字段)2、过滤重复记录(只显示一条)注:此处显示ID最大一条记录。1、删除全部重复记录(慎用)1、查找全部重复记录。

2022-10-31 13:50:57 7446

原创 根据前端接口查询代码位置(RestfulToolkit)

IntelliJ IDEA --> Preferences --> Plugins,输入restfultoolkit,进行安装,安装完成后需要重启电脑才能生效。Mac:shift + command + \ (但其实你直接双击shift也可以出现一样的效果)在network中找到请求接口位置,这里只是举个例子。

2022-10-10 17:10:55 436

原创 Java连接Aerospike(4.0.3)增删改查

以下仅演示部分Api的使用,具体详细的去底层包中查看。

2022-10-10 10:02:25 437

原创 Java连接Elasticsearch5.X的三种方式并附带代码(增删改查)

9200端口是用于Http协议访问的,如果通过客户端访问需要通过9300端口才可以访问。

2022-09-29 19:51:25 1826 1

原创 mac系统下kafka的tar包形式安装及启动(Linux)

找到你想下载版本,我这里下载的3.0.0(如果觉得下载慢,可以复制下载链接到迅雷下载)Mac系统下建议不要用Homebrew下载,都不知道安装在哪里搞得目录麻烦的很。5.开启一个终端启动kafka中内置的zookeeper。3. 移动文件夹到你想存储的根目录下,4.终端进入到kafka目录下,如下图。9.创建一个终端,用来消费者接受信息。8.创建一个终端,并写入生产者的信息。命令,输入root密码,进行移动。7.开一个终端,创建一个topic。6. 开启一个终端启动kafka。成功了,开心ing!

2022-09-20 11:48:34 1159

原创 解决springProject‘org.springframework.boot:spring-boot-starter-parent:2.x.x‘ not found

maven依赖发生错误

2022-09-14 17:53:54 596

原创 IDEA报错:Plugin ‘org.springframework.boot:spring-boot-maven-plugin:‘ not found

是版本号没有和父项目保持一致。

2022-09-14 17:04:17 336

原创 `符号在sql中的作用

为了防止sql报错。

2022-06-19 17:25:36 755

转载 堆结构的优秀实现类----PriorityQueue优先队列

https://blog.csdn.net/qq_35326718/article/details/72866180?spm=1001.2101.3001.6650.6&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-6.pc_relevant_antiscanv2&depth_1-utm_source=distribute.pc_relevant.none-

2022-04-30 14:30:04 107

转载 SQL 语句中 exists和not exists的用法

https://blog.csdn.net/wxf_suzhou/article/details/82962515?spm=1001.2101.3001.6650.3&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-3.pc_relevant_default&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7E

2022-04-22 14:09:53 136

转载 windows安装rocketMQ

https://blog.csdn.net/qq_36657751/article/details/115895892

2022-04-22 10:59:59 97

转载 高效解决 springBoot 集成 Redis 出现的: Unable to connect to Redis 问题

报错如下:org.springframework.data.redis.RedisConnectionFailureException: Unable to connect to Redis; nested exception is io.lettuce.core.RedisConnectionException: Unable to connect to 192.168.136.222:6379 at org.springframework.data.redis.connection.lettuce

2022-04-19 18:09:02 1864

空空如也

空空如也

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

TA关注的人

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