- 博客(137)
- 收藏
- 关注
原创 MarkDown 编辑器字体改颜色大小等常用操作
引言 如果有好用的我会慢慢添加,有会的大佬也可以留言教教我! 一、字体选择 <font face="宋体">宋体</font> <font face="仿宋">仿宋</font> <font face="楷体">楷体</font> <font face="隶书">隶书</font> <font face="黑体">黑体字</font> <font face="微软雅黑">微软
2021-10-18 00:32:00
4613
3
原创 windows CMD常用命令
1. cd 命令 //进入c盘 C: //进入F盘 F: cd /? //获取帮助 cd \ //跳转到硬盘的根目录 cd C:\WINDOWS //跳转到当前硬盘的其他文件 d: //跳转到其他硬盘 cd /d e:\software //跳转到其他硬盘的其他文件夹,注意此处必须加/d参数。否则无法跳转。 cd .. //跳转到上一层目录 2. 查看目录文件 //查看当前目录下的文件,类似linux的ls dir //查看文本文档 type
2022-05-04 23:16:56
6157
原创 CI/CD 面试题整合
文章目录一、DevOps 术语和定义1.什么是DevOps2. 什么是持续集成3. 什么是持续交付4. 什么是持续部署5. 持续测试及其优点6. 什么是版本控制及其用途?7. 什么是Git?二、实施DevOps的原因1. DevOps为什么重要?2. DevOps对开发人员有何帮助?3. 为什么DevOps变得越来越流行?4. CI/CD有什么好处?5. 持续交付有什么好处?6. 持续部署有哪些好处?三、如何有效实施DevOps1. DevOps工作流程2. DevOps的核心操作是什么?3. 在实施Dev
2022-05-01 00:40:49
5631
1
原创 Golang UDP编程
文章目录1. 服务端配置2. 客户端配置 UDP 是用户数据报协议,是一种无连接传输协议,不需要建立连接就可以直接发送和接收数据,属于不可靠的,没有时序的通信,UDP实时性好,适合直播环境。 1. 服务端配置 package main import ( "fmt" "net" ) //UDP服务端配置 func main() { //1:启动监听 listener, err := net.ListenUDP("udp", &net.UDPAddr{ IP: net.Parse
2022-04-29 14:02:11
1195
原创 Golang TCP编程
文章目录1. 客户端和服务器模型2. 服务器端配置3. 客户端配置 1. 客户端和服务器模型 socket: BSD UNIX的进程通信机制,通常也称作“套排字”,用于描述IP地址和端口,是一个通信链的句柄。 socket 可以理解为 TCP/IP 网络的API,它定义了许多函数,程序员可以使用它来开发TCPIP网络的应用程序。 计算机上运行对的应用程序通常通过“套接字"向网络发出请求或者应答网络请求。 服务端处理流程: ① 监听端口 ② 接收客户端连接 ③ 创建goroutine,处理此连接
2022-04-28 17:33:45
2760
原创 Golang 单元测试
文章目录1. 测试函数2. 结构体测试 在提交测试工程师代码前,先进行单元测试自检,没有问题,方可提交代码,对于模块或者函数需要自行写测试用例 测试规则: ① 文件名必须以_test go结尾 ② 如果是测试函数,必须以Test开头 1. 测试函数 calc.go package main //加法 func add(a, b int) int { return a + b } //减法 func sub(a, b int) int { return a - b } calc_tes
2022-04-28 12:22:49
517
原创 Golang 并发控制和锁
文章目录1. 互斥锁2. 读写互斥锁3. sync.Once4. sync.Map5. 定时器 在 go 代码中可能会存着多个 goroutine 同时操作一个资源(临界区),这种情况会发生竞态。例如:商场更衣间。 1. 互斥锁 互斥锁是一种常用的控制共享资源访问的方法,它能够保证只有一个 goroutine 访问共享资源。 互斥锁作用:同一时间有且仅有一个 goroutine 进入临界区,其他 goroutine 则在等待锁,等互斥锁释放后,等待的 goroutine 才可以获取锁进入临界区,多个
2022-04-27 20:22:45
760
原创 Golang 并发处理
文章目录一、基本概念二、sync.WaitGroup三、goroutine 和线程四、channel 一、基本概念 并发: 是指一个时间段中有几个程序都处于已启动运行到运行完毕之间,且这几个程序都是在同一个处理机上运行,但任一个时刻点上只有一个程序在处理机上运行。 (同一时间段同时在做多个事情) 并行: 在操作系统中是指,一组程序按独立异步的速度执行,无论从微观还是宏观,程序都是一起执行的。 (同一时刻同时在做多个事情) 进程: —个程序启动之后就创建了—个进程 线程: 操作系统调度的最小
2022-04-20 00:29:33
1400
原创 Golang 文件操作
文章目录引言1. 打开和关闭文件 引言 计算机的文件是存储再外部介质(硬盘)上的数据集合,文件分为文本文件和二进制文件 1. 打开和关闭文件 os.open()函数能够打开一个文件,返回一个*File和一个err,对得到的文件示例close()方法能够关闭文件。 package main import ( "fmt" "os" ) func main() { //系统打开文件并赋予文件实体 file, err := os.Open("./abc.txt") if err != nil {
2022-04-18 21:25:23
1702
原创 Golang 反射
文章目录引言1. reflect 包1.1 获取变量类型1.2 断言处理类型转换2. ValueOf2.1 获取变量值2.2 类型转换3. Value.Set3.1 设置变量值3.2 示例4. 结构体反射5. 函数反射 引言 反射指的是运行时动态的获取变量的相关信息 1. reflect 包 类型是变量,类别是常量 reflect.TypeOf,获取变量的类型,返回reflect.Type类型 reflect.ValueOf,获取变量的值,返回reflect.Value类型 reflect.Value
2022-04-15 20:31:42
1153
原创 Golang 接口及使用接口实现链表插入
文章目录1. 接口定义 1. 接口定义 Interface 类型可以定义一组方法,不需要实现,并且不能包含任何的变量,称之为接口 接口不需要显示的实现,只需要一个变量,含有接口类型中的所有方法,那么这个变量就实现了这个接口,如果一个变量含有多个interface 类型的方法,那么这个变量就实现了多个接口 语法 type example interface{ Method1(参数列表)返回值列表 Method2(参数列表)返回值列表 ... } 示例 package main
2022-04-13 20:53:51
816
原创 Golang 结构体和方法
文章目录1. 结构体别名定义2. 工厂模式3. Tag 原信息 1. 结构体别名定义 变量别名定义 package main import "fmt" type integer int func main() { //类型别名定义 var i integer = 1000 fmt.Printf("值: %d, 类型: %T\n", i, i) var j int = 100 j = int(i) //j和i不属于同一类型,需要转换 fmt.Println(j) } //输出结果
2022-04-09 23:59:02
1067
原创 Golang 二叉树遍历
文章目录1. 二叉树的定义2. 前序遍历3. 中序遍历4. 后序遍历 1. 二叉树的定义 二叉树需满足的条件 ① 本身是有序树 ② 树中包含的各个节点的长度不能超过2,即只能是0、1或者2 2. 前序遍历 前序遍历二叉树的顺序:根——》左——》右 package main import "fmt" //定义结构体 type Student struct { Name string Age int Score float32 left *Student //左子树指针 righ
2022-04-09 22:26:02
1048
原创 Golang 结构体链表
文章目录1. 什么是链表2. 单项链表3. 使用 struct 定义单链表4. 尾部添加节点5. 头部插入节点6. 指定节点后添加新节点7. 删除节点 1. 什么是链表 链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。 链表由一系列结点(链表中每一个元素称为结点)组成,结点可以在运行时动态生成。每个结点包括两个部分:一个是存储数据元素的数据域,另一个是存储下一个结点地址的指针域。 使用链表结构可以避免在使用数组时需要预先知道数据大小的缺点,
2022-04-09 00:44:49
2431
原创 Golang 时间函数
文章目录引言1. 时间格式化2. 示例 引言 1946年2月14日,人类历史上公认的第一台现代电子计算机“埃尼阿克”(ENIAC)诞生。 计算机语言时间戳是以1970年1月1日0点为计时起点时间的。计算机诞生为1946年2月14日,而赋予生命力时间是从1970年1月1日0点开始。 1小时=60分钟 Hour 1分钟=60秒 Minute 1秒=1000毫秒 Second 1毫秒=1000微秒 Millsecond 1微秒=1000纳秒 Microsecond 1纳
2022-04-07 22:19:23
654
原创 Golang 字符串的各种常见操作
文章目录1. 字节数组2. 头尾处理3. 位置索引4. 替换5. 统计次数6. 重复7. 大小写8. 去除字符9. 字符串切片处理10. 数值处理 1. 字节数组 字节与字符的区别 字节(Byte) 是计量单位,表示数据量多少,是计算机信息技术用于计量存储容量的一种计量单位,通常情况下一字节等于八位 字符(Character) 是计算机中使用的字母、数字、字和符号,比如’A’、‘B’、‘$’、'&'等 一般在英文状态下一个字母或字符占用一个字节,一个汉字用两个字节表示 通俗点来说,
2022-04-04 23:16:11
1979
原创 Golang 递归函数
文章目录引言1. 什么是递归函数2. 数字阶乘3. 斐波那契数列(Fibonacci) 引言 递归函数对于解决数学上的问题是非常有用的,比如计算阶乘,生成斐波那契数列等 1. 什么是递归函数 递归,就是在运行的过程中调用自己 一个函数调用自己,就叫做递归函数 构成递归需具备的条件: 子问题须与原始问题为同样的事,且更为简单; 不能无限制地调用本身,须有个出口,化简为非递归状况处理。 2. 数字阶乘 阶乘是基斯顿·卡曼于 1808 年发明的运算符号,是数学术语 一个正整数的阶乘(factorial
2022-04-02 21:29:37
563
原创 Golang 映射(map)
文章目录1. 什么是 map2. 创建 map3. 访问 map4. nil map和空map5. map中元素的返回值6. len()和delete()7. 测试map中元素是否存在8. 迭代遍历 map9. 获取map中所有的key10. 传递map给函数 1. 什么是 map Map 是一种无序的键值对的集合。Map 最重要的一点是通过 key 来快速检索数据,key 类似于索引,指向数据的值 Map 是无序的,我们无法决定它的返回顺序,这是因为 Map 是使用 hash 表来实现的 M
2022-04-01 00:03:46
1244
原创 Golang 结构体
文章目录引言一、定义结构体1. 语法格式2. 示例二、访问结构体成员三、结构体作为函数参数四、结构体指针总结 引言 Go 语言中数组可以存储同一类型的数据,但在结构体中我们可以为不同项定义不同的数据类型 结构体是由一系列具有相同类型或不同类型的数据构成的数据集合 结构体表示一项记录,比如保存图书馆的书籍记录,每本书有以下属性: Title :标题 Author : 作者 Subject:学科 ID:书籍ID 一、定义结构体 1. 语法格式 结构体定义需要使用 type 和 struct 语句 str
2022-03-29 22:02:19
801
原创 Golang 指针
文章目录引言一、指针地址和指针类型1. 什么是指针2. 指针的使用3. 空指针二、指针数组1. 定义长度为3的整形数组2. 声明整形指针数组三、指向指针的指针1. 概述2. 示例3. 多重指针四、指针作为函数参数总结 引言 Go 语言中的函数传参都是值拷贝,当我们想要修改某个变量的时候,我们可以创建一个指向该变量地址的指针变量。 传递数据使用指针,而无须拷贝数据。Go语言中的指针操作非常简单,只需要记住两个符号:&(取地址)和*(根据地址取值)。 一、指针地址和指针类型 1. 什么是指针
2022-03-29 00:12:48
5927
1
原创 Golang 包了解以及程序的执行
文章目录引言一、包介绍1. 包的基本概念2. 包的用法3. 标识符可见性4. 包的引入二、标准库1. 标准库概述2. 标准库常见的包及其功能3. 程序执行顺序 引言 Go 语言是使用包来组织源代码的,包(package)是多个 Go 源码的集合,是一种高级的代码复用方案。Go 语言中为我们提供了很多内置包,如 fmt、os、io等。 任何源代码文件必须属于某个包,同时源码文件的第一行有效代码必须是package pacakgeName 语句,通过该语句声明自己所在的包。 一、包介绍 1. 包的基
2022-03-25 22:30:05
876
原创 Golang 切片的使用(增删改查)
文章目录引言一、切片的基础语法1. 语法2. 示例3. 切片的长度和容量二、切片的初始化1. 直接初始化2. 使用数组初始化3. 使用数组的部分元素初始化(切片表达式)4. 空(nil)切片三、切片的遍历1. for 循环遍历2. for range遍历四、切片元素的添加和删除copy1. 添加元素2. 删除元素3. 修改切片元素4. 查找切片元素5. 拷贝切片 引言 Golang 的数组是固定长度,可以容纳相同数据类型的元素的集合。 但是当长度固定了,在使用的时候肯定是会带来一些限制,比如说:申请的长
2022-03-25 00:45:13
3866
原创 Go 语言函数
文章目录1. 概述2. 函数的定义 1. 概述 函数是基本的代码块,用于执行一个任务 Go 语言最少有一个 main() 函数 你可以通过函数来划分不同功能,逻辑上每个函数执行的是指定的任务 函数声明告诉了编译器函数的名称,返回类型,和参数 Go 语言标准库提供了多种可动用的内置的函数。 例如,len()函数可以接受不同类型参数并返回该类型的长度。如果我们传入的是字符串则返回字符串的长度,如果传入的是数组,则返回数组中包含的元素个数。 2. 函数的定义 Go 语言函数定义格式如下
2022-03-24 22:16:17
874
原创 Go 语言数组
文章目录引言一、数组的定义1. 语法2. 示例二、数组的初始化1. 未初始化的数组2. 使用初始化列表3. 省略数组长度4. 指定索引值的方式来初始化5. 访问数组元素 引言 数组是相同数据类型的一组数据的集合,数组一旦定义长度不能修改,数组可以通过下标(或者叫索引)来访问元素。 相对于去声明 number0, number1, ..., number99 的变量,使用数组形式 numbers[0], numbers[1] ..., numbers[99] 更加方便且易于扩展。 数组元素可以通过索
2022-03-24 10:36:31
1460
原创 Go 语言条件语句
文章目录1. if 语句2. if...else 语句3. if 语句嵌套4. swit 语句 条件语句需要开发者通过指定一个或多个条件,并通过测试条件是否为 true 来决定是否执行指定语句,并在条件为 false 的情况在执行另外的语句。 Go 语言提供了以下几种条件判断语句: 语句 描述 if 语句 if 语句由一个布尔表达式后紧跟一个或多个语句组成。 if…else 语句 if 语句后可以使用可选的 else 语句, else 语句中的表达式在布尔表达式为 fals
2022-03-18 22:38:09
357
原创 Go 语言基础语法
文章目录一、GO 语言结构1. 基础组成2. 实例3. 执行 Go 程序 一、GO 语言结构 1. 基础组成 包声明 引入包 函数 变量 语句&表达式 注释 2. 实例 package main import "fmt" func main() { /* 这是我的第一个简单的程序 */ fmt.Println("hello world!") } 第一行代码 package main 定义了包名。你必须在源文件中非注释的第一行指明这个文件属于哪个包,如:package main。
2022-03-17 13:36:58
1581
原创 Centos7 增加swap分区的内存大小
对 swap 空间的适当大小实际上取决于您的个人偏好和您的应用程序要求。通常,等于或双倍于系统内存的量是一个很好的选择。 添加之前,内存为8M 添加swap分区 使用dd命令创建/home/swap这么一个分区文件。文件的大小是8192000 个block,一般情况下1个block为1K,所以这里空间是8G。 dd if=/dev/zero of=/var/swapfile bs=1024 count=2048000 对交换文件格式化并转换为swap分区 mkswap /var/swapf.
2022-02-12 14:12:40
1538
原创 Devops 开发运维基础篇之使用Maven构建项目
文章目录一、Jenkins项目构建类型1. Jenkins构建的项目类型介绍2. 自由风格项目构建2.1 拉取代码2.2 编译打包2.3 部署2.4 演示改动代码后的持续集成2. Maven项目构建 一、Jenkins项目构建类型 1. Jenkins构建的项目类型介绍 Jenkins中自动构建项目的类型有很多,常用的有以下三种: 自由风格软件项目(FreeStyle Project) Maven项目(Maven Project) 流水线项目(Pipeline Project) 每种类型的构建其
2022-02-11 21:51:51
574
1
原创 Devops 开发运维基础篇之使用Maven编译和打包项目
文章目录引言1. 安装Maven2. 配置环境变量3. 全局工具配置关联JDK和Maven4. 添加 Jenkins 全局变量5. 修改 Maven 的配置文件6. 测试Maven是否配置成功 引言 Maven 的翻译为"专家"、“内行”,是 Apache 下的一个纯 Java 开发的开源项目。 基于项目对象模型(缩写:POM)概念,Maven利用一个中央信息片断能管理一个项目的构建、报告和文档等步骤。 Maven 是一个项目管理工具,可以对 Java 项目进行构建、依赖管理。 Maven 也可被用于构建
2022-02-10 23:29:20
1279
原创 【error】Centos 7 ens33网卡消失且无法激活
打开虚拟机发现没有网,使用ifconfig命令查看后发现ens33网卡挂了 解决方法,命令如下 chkconfig NetworkManager off chkconfig network on service NetworkManager stop service network start
2022-02-10 22:54:44
1476
1
原创 Devops 开发运维基础篇之Jenkins部署与使用
文章目录一、Jenkins 概述1. Jenkins 介绍2. Jenkins 环境部署3. 安装 JDK 及配置环境变量二、Gitlab代码托管服务器安装1. Gitlab 简介2. Gitlab安装3. Gitlab 添加组、创建用户、创建项目三、源码上传到 Gitlab 仓库1. 安装开发工具 IDEA2. 使用补丁包进行激活3. 构建web项目4. 安装 tomcat 服务器5. 配置 IDEA 识别 tomcat6. 开启版本控制7. 安装 git8. 先Add到缓存区9. 推送到Gitlab项目
2022-02-09 12:44:14
2189
1
原创 Devops 开发运维基础篇之软件开发和持续集成
文章目录引言一、软件开发概述1. 软件开发生命周期2. 软件开发瀑布模型3. 软件的敏捷开发3.1 迭代开发3.2 增量开发3.3 敏捷开发如何迭代3.4 敏捷开发的好处二、持续集成概述1. 什么是持续集成2. 持续集成的流程3. 持续集成的组成要素3. 持续集成的好处 引言 DevOps(Development和Operations的组合词)是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合。 它是一种重视“软件开发人员
2022-02-09 11:51:48
652
原创 Python 函数的了解与使用
文章目录引言一、函数的定义和调用1. 定义函数2. 函数的返回值3. 调用函数4. 参数传递二、参数1. 默认参数2. 不定长参数3. 必要参数4. 关键字参数三、函数传参的类型问题四、函数的四种类型 引言 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。 函数能提高应用的模块性,和代码的重复利用率。 Python 提供了许多内建函数,比如print(),但你也可以自己创建函数,这被叫做用户自定义函数。 一、函数的定义和调用 1. 定义函数 定义函数的规则: ① 函数代码块以 def
2022-01-20 01:23:09
1536
原创 Python 列表元组和字典
文章目录一、列表概述1. 什么是列表2. 访问列表中的值3. 列表的赋值3.1 在列表中增加元素3.2 在列表中查找元素3.3 在列表中修改元素3.4 在列表中删除元素二、列表的循环遍历 一、列表概述 1. 什么是列表 序列是 Python 中最基本的数据结构。序列中的每个值都有对应的位置值,称之为索引,第一个索引是 0,第二个索引是 1,依此类推; 列表是最常用的 Python 数据类型,它可以作为一个方括号内的逗号分隔值出现; 列表的数据项不需要具有相同的类型,创建一个列表,只要把逗号分隔
2022-01-18 19:09:12
301
原创 Python 中元组是否可以被修改?
文章目录案例解析总结 案例解析 我们在创建元组时,按正常来说是不可以被修改的,如下所示: i=('hello world',520,[1314]) i[1]=888 print(i) 可以看到输出结果报错,如下 但是,当我做以下更改时,发现元组中的列表可以修改元素的 i=('hello world',520,[1314]) i[2][0]=2 print(i) #输出结果 ('hello world', 520, [2]) i=('hello world',520,[1314]) i
2022-01-18 09:21:58
6384
1
原创 Python 字符串及常见操作解析
文章目录一、什么是字符串二、如何创建字符串三、如何从字符串访问字符?四、Python 字符串更新五、Python 转义字符 一、什么是字符串 我们许多熟悉C,C ++等编程语言的人都会得到诸如“字符串是字符的集合或字符数组”的答案。在Python中也是如此,我们说的是String数据类型的相同定义。 字符串是序列字符的数组,并写在单引号,双引号或三引号内。另外,Python没有字符数据类型,因此当我们编写“ a”时,它将被视为长度为1的字符串。 二、如何创建字符串 创建字符串很简单,我们可以使用
2022-01-16 02:52:41
2323
原创 Python 基础语法
文章目录一、Python 简介1. python 的由来2. python 的特点3. python 的应用领域4. python 程序执行原理二、python 基础语法1. 变量和变量类型1.1 变量的构成1.2 内存模型1.3 变量的类型2. 标识符和关键字 一、Python 简介 1. python 的由来 Python 的创始人为荷兰人吉多·范罗苏姆(Guido van Rossum)。1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,作为ABC
2022-01-12 23:37:02
434
原创 Python 环境搭建
文章目录一、Python 3.8 安装1. 下载解释器2. 安装 python3.83. 配置环境变量二、破解版 Pycharm 安装 一、Python 3.8 安装 1. 下载解释器 解释器下载地址 2. 安装 python3.8 上面如果没有勾选环境变量的话,那么这在里用 cmd 去登录就会进行跳转 3. 配置环境变量 ① 找 python 的安装路径 C:\Users\gulei\AppData\Local\Programs\Python\Python38 ② 使用 cmd
2022-01-11 11:37:07
345
3
原创 基于 k8s 搭建 kubeSphere 平台
文章目录1. 实验准备2. 安装 docker3. 配置阿里云 K8S repo 源(三个节点)4. 安装 kubeadm,kubelet,kubectl(三个节点)5. 部署 kubernetes Master 节点(master 节点上执行)6. k8s-node 节点加入 master 节点(两个 node 执行)7. 安装 Pod 网络插件(CNI 插件,master 节点)四、KubeSphere4.1、kubesphere介绍4.2、安装前准备4.2.1、安装helm和tiller4.2.2、
2022-01-01 00:30:17
3227
11
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅