- 博客(39)
- 收藏
- 关注
原创 CentOS7内核升级(RPM包方式)
先查看cat /etc/grub2.cfg | grep menuentry|awk -F "\'" '$1=="menuentry " {print i++ " : " $2}'再grub2-mkconfig -o /boot/grub2/grub.cfg。执行命令 yum localinstall -y kernel-lt*重启完成后uname -a 查看即大功告成。再grub2-set-default 0。再grub2-editenv list。rpm包可联系我发网盘链接。下载rpm对于两个包。
2024-12-09 22:36:47
391
原创 nacos镜像启动时候报Public Key Retrieval is not allowed
在nacos的配置文件里加上一句allowPublicKeyRetrieval=true。
2024-11-21 21:27:06
459
原创 GRPC实现
.proto,其中的 * 是说编译当前目录下的所有 .proto 文件,也可以单独指定为 xxx.proto 文件。--go_out=. 其中的. 是说你要编译的 .proto 文件目录为当前目录,按需修改。--go-grpc_out=.,其中的. 是说你生成 .pb.go 文件的目录,按需修改。5.把proto生成的go文件复制到客户端一份,再写客户端代码。1.首先下载对应编译插件,这里不再提供下载。3.编写完成用命令生成go文件。4.生成完后在服务端写代码。2.编写proto文件。
2024-11-18 22:21:40
359
原创 golang中的init函数
它只会被导入一次,因为没有必要导入多次)。当一个包被导入时,如果该包还导入了其它的包,那么。有时一个包会被多个包同时导入,那么它只会被导入一次(例如很多包可能都会用到。会先将其它包导入进来,然后再对这些包中的包级常量和变量进行初始化,接着执行。有的话),依次类推。等所有被导入的包都加载完毕了,就会开始对。包还导入了其它的包,那么就会在编译时将它们依次。函数(如果存在的话),最后执行。程序的初始化和执行都起始于。包中的包级常量和变量进行。
2024-11-16 19:29:26
678
原创 redis哨兵模式搭建
1.安装docker-compose命令:curl -L "https://github.com/docker/compose/releases/download/1.29.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose。# 配置需要监听的 redis 集群,并起一个名称,这里只需要配置主机的地址即可。# 访问本机需要的密码 和 作为从机访问主机的密码。# 持久化文件的保存位置。# 日志文件的保存地址。
2024-10-28 23:23:51
581
原创 k8s集群node节点加入失败
6月 27 22:01:42 nodeOne kubelet[7665]: E0627 22:01:42.803879 7665 kubelet.go:2347] "Container runtime network not ready" networkReady="NetworkReady=false reason:NetworkPluginNotReady message:docker: network plugin is not ready: cni config uninitialized"
2024-06-27 22:29:37
1270
2
原创 kubeadm init 的时候出现validate cri
systemctl restart containerd//重启。找到disabled_plugins = ["cri"]改成disabled_plugins = []
2024-06-12 20:10:44
349
原创 初始化master节点
yum install docker-ce docker-ce-cli containerd.io 安装docker。yum install -y yum-utils 安装最新的yum包。yum makecache fase 更新yumr软件包索引。删除docker相关插件。设置阿里云下载镜像地址。
2024-06-11 22:05:41
414
原创 K8s第一章 搭建集群
三台虚拟机 分别非192.168.110.126 192.168.110.127 192.168.110.128。vi /etc/fstab 把最后一行注释掉。关闭防火墙和swap分区。三台虚拟机相互ping通。
2024-06-11 00:14:18
204
原创 gorm进行SQL日志打印
SlowThreshold: time.Second, //慢SQL阈值。LogLevel: logger.Info, //级别。Colorful: true, //彩色。初始化的时候引用这个方法,然后gorm操作的时候用该DB进行操作。//自定义日志模板 打印SQL语句。
2024-04-30 00:08:31
1070
3
原创 gin框架引入swagger
上图圈红的内容为swagger识别的内容,代码写好后,执行swag init会生成文件,浏览器打开swagger网站会显示内容。swag -v来验证安装是否成功,成功会显示版本信息。2.命令行:swag init 初始化文件。1.首先引入所需要的包。
2024-04-29 23:43:27
658
原创 Goroutine,MemoryModel,sync
context.witncancel ()函数接受一个 Context 并返回其子Context和取消函数cancel。log.fatal底层是调用os.exit,无条件中止程序,将不会执行defer。如”case <-context.Done():”需要在select-case语句中使用。据此goroutine可以收到关闭请求。Done()返回一个被关闭的管道。该方法返回一个channel。当context还未关闭时。当context关闭后。关闭的管理仍然是可读的。Done()返回nil。
2024-03-18 23:22:54
257
原创 K8S集合
KubeProxy : 负责制定数据包的转发策略,并以守护进程的模式对各个节点的pod信息实时监控并更新转发规则,service收到请求后会根据kube-proxy制定好的策略来进行请求的转发,从而实现负载均衡,总的来说,负责为Service提供cluster内部的服务发现和负载均衡;Node是K8S集群中的工作负载节点,每个Node都会被Master分配一些工作负载,当某个Node宕机时,其上的工作负载会被Master自动转移到其他节点上。Docker : 负责节点上容器的各种操作;
2024-03-18 23:21:26
337
原创 golang中的context详解带案例
所以我们需要一种可以跟踪 goroutine 的方案, 才可以达到控制他们的目的, 这就是 Go 语言为我们提供的 Context, 称之为上下文非常贴切, 它就是 goroutine 的上下文。这就是示例中的 cancel 函数啦, 它是我们调用 context.WithCancel(parent) 函数生成子 Context 的时候返回的, 第二个返回值就是这个取消函数, 它是 CancelFunc 类型的。context.WithCancel(parent) 函数, 创建一个可取消的。
2024-03-17 18:04:36
546
原创 Redis
redis数据在内存中,可做缓存,消息中间件,内存型数据库,读写快,断电消失,但是允许持久化到硬盘中。1.redis是一个高性能的key /value内存型数据库2.
2024-03-14 23:05:32
138
1
原创 gorm操作链接数据库
DontSupportRenameIndex: true, // 重命名索引时采用删除并新建的方式,MySQL 5.7 之前的数据库和 MariaDB 不支持重命名索引。DontSupportRenameColumn: true, // 用 `change` 重命名列,MySQL 8 之前的数据库和 MariaDB 不支持重命名列。DisableDatetimePrecision: true, // 禁用 datetime 精度,MySQL 5.6 之前的数据库不支持。
2024-03-12 23:35:53
305
1
原创 Shell汇总
1.脚本通常以#/bin/bash开头2.执行方式有两种,一种是本质是bash解析器帮你执行脚本,所以脚本本身不需要执行,命令是sh +文件名,第二种执行方法,本质是脚本需要自己执行,所以需要执行权限。chmod 777 +文件名,然后./文件名3.第二个 Shell 脚本:多命令处理 (1)需求: 在/home/atguigu/目录下创建一个 banzhang.txt,在 banzhang.txt 文件中增加“I love cls”。 (2)案例实操:[atguigu@hadoop101 da
2024-03-12 23:34:54
428
1
原创 docker常用命令
运行一个容器 # -it 表示 与容器进行交互式启动 -d 表示可后台运行容器 (守护式运行) --name 给要运行的容器 起的名字 /bin/bash 交互路径。#docker cp 容器ID/名称:文件路径 要拷贝到外部的路径 | 要拷贝到外部的路径 容器ID/名称:文件路径。docker run -itd --name 要取的别名-p 8888:6379 redis:5.0.5 /bin/bash。#删除多个容器 空格隔开要删除的容器名或容器ID。docker拉取镜像。
2024-03-11 23:59:25
1274
原创 GO语言面试题
一般来说,局部变量会在函数返回后被销毁,因此被返回的引用就成为了没有指针指向的引用,程序会进入未知状态 但这在go中是。的,go语言会对每个局部变量进行逃逸分析,如果发生局部变量的作用域超出该函数,则不会将内存分配在栈上,而是分配在堆上,即使释放函数,其内容也不会受影响。按照先进后出的方式。
2024-03-10 20:23:15
1817
1
原创 gin
gin返回html,当有相同的html时候,要用define end 标签。1.gin.new()和gin.default()区别是,GET请求: str = c.Query("wd")3.gin获取URL参数。
2023-05-20 16:52:04
89
原创 阿坤杂货铺
WaitGroup总共有三个方法:Add(delta int),Done(),Wait()。简单的说一下这三个方法的作用。3)不使用for进行遍历,假如使用for进行遍历长度为100的channel数据,最后拿出来的只有50条。1:有缓存channe和无缓冲channel重要区别,有缓存的话,不及时拿出来不会死锁,否则会死锁。2)在遍历时,如果channel已经关闭,则会正常遍历数据,遍历完后,就会退出遍历。1)在遍历时,如果channel没有关闭,则会出现deadlock 的错误。
2023-05-02 00:09:51
97
原创 Docker
创建一个叫test的数据库。9.show create databases 库名;查看创建库的详细信息。6.create table 表名 (字段1 类型, 字段2 类型);10.show create table 表名;查看创建表的详细信息。删除一个叫test的数据库。在选中的数据库之中查看所有的表。8.drop table 表名;根据id删除 docker rm id。
2023-04-28 18:32:31
79
原创 Linux全集
1.vi/vim的三种模式: 正常模式,插入模式,命令行模式。:set nu 显示行数shutdown -h now 立即关机shutdown -r now 重启shutdown -h 1 一分钟后关机reboot 重启sync 把数据同步到磁盘2.添加用户基本语法useradd 用户名passwd 用户名 添加密码3.删除用户:删除用户,但是要保留该用户文件:userdel 用户名删除用户以及该用户的所有文件:userdel -r////当遇到...
2021-07-07 15:23:11
103
原创 MySQL事务
原子性:一个事务(transaction)中的所有操作,要么全部完成,要么全部不完成,不会结束在中间某个环节。事务在执行过程中发生错误,会被回滚(Rollback)到事务开始前的状态,就像这个事务从来没有执行过一样。 一致性:在事务开始之前和事务结束以后,数据库的完整性没有被破坏。这表示写入的资料必须完全符合所有的预设规则,这包含资料的精确度、串联性以及后续数据库可以自发性地完成预定的工作。 隔离性:数据库允许多个并发事务同时对其数据进行读写和修改的能力,隔离性可以防止多个事务并发执..
2021-06-20 23:02:47
82
原创 &和&&的区别
& 不管前面的条件是否正确,后面都执行&& 前面条件正确时,才执行后面,不正确时,就不执行,就效率而言,这个更好int i=1;if(i==2 & i++==2){} //i==2为false,但i++==2还会继续比较,所以i++被执行System.out.println(i);//i 打印出来为2int j=1;if(j==2 && j++==2){} //j==2为false,但j++==2不会继续比较,所以j++不被执行System..
2021-06-20 22:37:38
120
原创 MySQL索引
InnoDBa:主键索引设定为主键后数据库会自动建立索引,innodb为聚簇索引,不能为空b单值索引一个表可以有多个单值索引c唯一索引索引列的值可以为空d复合索引一个索引包含多个列
2021-06-11 17:31:10
91
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅