自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(70)
  • 资源 (1)
  • 收藏
  • 关注

原创 【kubernetes】k8s架构之节点

kubernetes通过将容器放入在节点(Node)上运行的Pod中来执行工作负载节点可以是一个虚拟机或者一台物理机器,取决于所在集群的配置。每个节点包含运行Pod所需的服务,这些节点由控制面板负责管理通常集群中会有若干个节点;节点上的组件包括kubelet容器运行时以及kube-proxy。

2023-11-22 17:26:57 512

原创 【kubernetes】k8s组件

当我们部署完kubernetes,就拥有了一个完整的集群。一组工作机器,称为节点,会运行容器化应用程序。每个集群至少有一个工作节点工作节点会托管Pod,而Pod就是作为应用负载的组件。控制平面 管理 集群中的工作节点和Pod。在生产环境中,控制平面通常跨多台计算机运行,一个集群通常运行多个节点,提供容错性和高可用性。

2023-11-07 11:48:47 201

原创 【kubernetes】pod的生命周期

pod遵循预定义的生命周期,起始于Pending阶段,如果至少其中一个主要容器正常启动,则进入Running状态,之后取决于pod中是否有容器以失败状态结束而进入Succeeded和Failed阶段在pod运行期间,kubelet能够重启容器以处理一些失效场景。在pod内部,kubernetes跟踪 不同容器的状态并确定pod重新变得健康所需要采取的动作。在kubernetes API 中,Pod包含规约部分和实际状态部分,Pod对象的状态包含了一组pod状况(Conditions)

2023-11-06 20:35:42 298

原创 【kubernetes】k8s对象☞pod

pod 是在kubernetes 中创建和管理的最小的可部署的计算单元。pod 是一组容器,这些容器共享存储、网络以及怎样运行这些容器的申明。pod中的内容总是并置的(colocated)并且一同调度,在共享的上下文中运行。pod所建模的是特定于应用的“逻辑主机”,其中包含一个或多个应用容器,这些容器相对紧密的耦合在一起,在非云环境中,在相同的物理机或者虚拟机上运行的应用类似于在同一逻辑主机上运行的云应用。除了应用容器,pod还可以包含在pod启动期间运行的init容器。

2023-11-02 21:33:44 561

原创 【kubernetes】k8s对象

在k8s系统中,kubernetes对象是持久化的实体,kubernetes使用这些实体去表示整个集群的状态哪些容器化应用正在运行(运行在哪个节点上)可以被应用使用的资源关于应用运行时行为的策略,如重启策略、升级策略、容错策略等kubernetes对象是一种意向表达, 一旦创建该对象,kubernetes系统将不断工作,以确保该对象存在。通过创建对象,本质上是在告诉k8s系统,我们想要的集群工作负载状态看起来应该是什么样子,这就是k8s集群所谓的期望状态(Desired State)

2023-11-02 16:35:56 86

原创 【Kubernetes】初识k8s--扫盲阶段

kubernetes是一个可移植、可扩展的开源平台,用于管理容器化的工作负载和服务,可促进申明式配置和自动化。kubernetes拥有一个庞大且快速增长的生态,其服务、支持和使用的范围相当广泛。kubernetes是建立在Google大规模运行生产工作负载十几年的基础上,结合了社区中最优秀的想法和实践。

2023-11-02 15:12:12 563

原创 【Golang】结构体详解

go结构体详解

2023-10-26 14:23:54 1735

原创 【Golang】gin框架入门

gin

2023-10-05 16:34:36 1420 3

原创 【Golang】网络编程

网络编程网络模型介绍OSI七层网络模型在软件开发中我们使用最多的是上图中将互联网划分为五个分层的模型:物理层数据链路层网络层传输层应用层物理层我们的电脑要与外界互联网通信,需要先把电脑连接网络,我们可以用双绞线、光纤、无线电波等方式。这就叫做”实物理层”,它就是把电脑连接起来的物理手段。它主要规定了网络的一些电气特性,作用是负责传送0和1的电信号数据链路层单纯的0和1没有任何意义,所以我们使用者会为其赋予一些特定的含义,规定解读电信号的方式:例如:多少个电信号算

2023-10-04 22:12:47 413

原创 【Golang】并发

并发有人把Go语言比作 21 世纪的C语言第一是因为Go语言设计简单第二则是因为 21 世纪最重要的就是并发程序设计,而 Go 从语言层面就支持并发。同时实现了自动垃圾回收机制先来了解一些概念:进程/线程进程是程序在操作系统中的一次执行过程,系统进行资源分配和调度的一个独立单位线程是进程的一个执行实体,是 CPU 调度和分派的基本单位,它是比进程更小的能独立运行的基本单位一个进程可以创建和撤销多个线程,同一个进程中的多个线程之间可以并发执行并发/并行多线程程序在单核心的 cpu 上运

2023-10-04 16:41:49 365 1

原创 【Golang】包

包 go mod

2023-10-04 12:49:12 325 1

原创 【Golang】接口 && IO操作

Go语言提倡面向接口编程每个接口类型由数个方法组成。type 接口类型名 interface{方法名1( 参数列表1 ) 返回值列表1方法名2( 参数列表2 ) 返回值列表2接口类型名:使用 type 将接口定义为自定义的类型名。Go语言的接口在命名时,一般会在单词后面添加 er,如有写操作的接口叫 Writer,有字符串功能的接口叫 Stringer,有关闭功能的接口叫 Closer 等。

2023-10-03 15:57:40 448

原创 【Golang】数组 && 切片

当 map 增长到容量上限的时候,如果再增加新的 key-value,map 的大小会自动加 1,所以出于性能的考虑,对于大的 map 或者会快速扩张的 map,即使只是大概知道容量,也最好先标明。Go语言的内置函数 copy() 可以将一个数组切片复制到另一个数组切片中,如果加入的两个数组切片不一样大,就会按照其中较小的那个数组切片的元素个数进行复制。N维数组本质上是一个一维数组,这个一维数组的每个元素是N-1维数组,以此类推,直到访问到最底一层,能够直接处理数组中的元素。

2023-10-02 18:07:18 868 3

原创 【Golang】函数篇

其中func用于表明这是一个函数,剩下的东西与其他语言的函数基本一致,在定义与使用的时候注意函数名、参数、返回值书写的位置即可。下面使用一个例子说明:求两个整数的和首字母本包文件和首字母。

2023-09-03 15:51:17 1602

原创 【golang】派生数据类型---指针 && 标识符、关键字等

1、组成部分:字母、数字、下划线2、注意:不能以数字开头、严格区分大小写、不能包含空格、不可以使用GO中保留的关键字3、见名知意:增加可读性4、下划线 “_”在go中本身是一种特殊的标识符,称之为空标识符。所以下划线仅能作为占位符使用,不能单独作为标识符使用。5、起名规则包名:package的名字尽量和目录保持一致,尽量采取有意义的包名,做到简短、有意义但不要和标准库发生冲突变量名、函数名、常量名:采用驼峰法注意:如果变量名、函数名、常量名。

2023-08-27 19:28:56 580

原创 【GoLang】go入门:go语言执行过程分析 && 常见数据类型(基本数据类型)

主要分为两大类,分别是基本数据类型和复杂(派生)数据类型。

2023-08-27 16:44:03 617

原创 基于TCP的聊天系统

基于TCP socket编程的聊天系统

2022-08-03 14:33:52 1142 1

原创 【网络篇】套接字编程

套接字编程TCPsocket && UDPsocket

2022-06-08 20:31:44 1190 3

原创 【C++】AVL树的简单实现及验证

文章目录1、什么是AVL树?2、AVL树部分模块模拟实现2.1 AVL树结点的定义:2.2 AVL树的插入1、什么是AVL树?  AVL树可以是一棵空树  AVL树也可以是一棵具有如下性质的二叉搜索树:    ①它的左右子树都是一棵AVL树    ②左右子树高度之差(平衡因子)的绝对值不能超过1如果一棵二叉搜索树是高度平衡的,那么他就是AVL树。如果他有n个结点,其高度可以保持在O(log2n),搜索时时间复杂度也就是O(log2n)2、AVL树部分模块模拟实现2.1 AVL树结点的定义

2022-05-29 13:15:38 443 4

原创 【网络篇】网络理论基础入门

文章目录1、网络发展背景2、网络协议的初识3、网络协议的分层分类为什么要有网络分层?4、网络数据的封装与复用5、IP地址和MAC地址IP地址MAC地址1、网络发展背景1、为什么要存在网络呢? 本质上就是计算机数量由少变多,计算机由单台完成某个功能编程多台协作完成某个功能的情况。进而演变出来的数据传输的解决方案.2、网络的分类2、网络协议的初识协议:约定沟通双方传递信息的格式网络完成的事情是:将数据从A主机的a进程传递到B主机的b进程网络协议:约定网络主机在传输数据时候的格式结论:1、网

2022-05-25 16:24:34 1180

原创 【C++】二叉搜索树

1、二叉搜索树的概念 二叉搜索树又称二叉排序树,它可以是一颗空树,亦可以是一颗具有如下性质的二叉树:  ①若根节点的左子树不为空,则左子树上的所有节点的值域都小于根节点的值  ②若根节点的右子树不为空,则右子树上的所有节点的值域都大于根节点的值  ③根节点的左右子树分别也是一颗二叉搜索树例如下面的这棵二叉树就是一棵二叉搜索树:注意:判定一棵二叉树是否为二叉搜索树一定要紧扣二叉搜索树的概念~2、二叉搜索树的操作声明:该文章讨论的是二叉搜索树中节点值唯一的情况。二叉搜索树的查找对于查找部分

2022-05-22 12:46:46 1288 1

原创 【C++】继承之C++中不同的继承体系

文章目录单继承多继承菱形继承概念存在的问题如何解决?菱形虚拟继承虚拟继承什么是虚拟继承?内存层面理解虚拟继承虚拟继承和普通单继承的区别虚拟继承 + 菱形继承单继承一个子类只有一个父类。这类继承方式是最为简单的。具体可以参考继承 上篇中的例子。这里给出简单的图示即可:多继承一个子类有两个或两个以上的直接父类,这样的继承关系称之为多继承。图解:注意事项: ①在多继承的场景下,建议在继承的每一个基类名称前都加上继承方式,如果不加,可能无法达到我们的预期结果。 结论:  class修饰的类

2022-05-02 13:13:42 882 27

原创 【C++】继承 上篇

文章目录1、概念及定义1.1 概念1.2 定义2、class 与 struct 的区别3、赋值兼容规则4、继承中的作用域问题5、派生类(子类)的默认成员函数5.1 构造函数5.2 拷贝构造函数5.3 赋值运算符重载5.4 析构函数6、基类中哪些成员被子类继承了?6.1 成员变量6.2 成员方法1、概念及定义1.1 概念继承主要的工作就是-----共性抽取具体地讲:  ①继承机制是面向对象程序设计使代码可以复用的最重要的手段;  ②允许程序员在保持原有类特性的基础上进行扩展,增加功能。这样实现的类

2022-05-01 21:19:26 1662 4

原创 【Linux】死锁 && 生产者与消费者模型 && 信号量

文章目录1、死锁1.1 死锁的产生场景1.2 死锁的gdb分析1.3 死锁的必要条件1.4 死锁的预防2、生产者与消费者模型2.1 123规则2.2 应用场景 && 优点2.4 代码实现(互斥锁+条件变量)3、信号量3.1 信号量的原理3.2 信号量的接口3.2.1 初始化接口3.2.2 等待接口3.2.3 释放接口3.2.4 销毁接口3.3 两点注意事项3.4 使用信号量实现生产者与消费者模型1、死锁1.1 死锁的产生场景1、线程加锁之后,没有释放互斥锁就退出了模拟实现分析

2022-04-30 18:37:00 2261 15

原创 【Linux】线程安全篇Ⅱ

文章目录0、接上篇1、同步存在的必要性1.1 样例引入1.2 结论2、条件变量2.1 条件变量的使用2.2 条件变量的原理2.3 条件变量的接口初始化接口等待接口唤醒接口销毁接口2.4 条件变量的代码2.5 条件变量夺命追问0、接上篇线程安全1、同步存在的必要性1.1 样例引入有了互斥之后,为什么还要有同步呢?这个问题值得我们讨论,我们知道,互斥通过控制线程的访问时序从而保证线程的安全。既然线程已经是安全的了,那还有同步什么事情呢?我们通过一个例子慢慢体会一下:现在有一个这样的场景:有两

2022-04-29 17:16:26 328 10

原创 【Linux】线程安全篇Ⅰ

文章目录1、线程不安全举例1.1 前提知识铺垫1.2 场景模拟1.3 代码模拟2、互斥2.1 什么是互斥2.2 互斥锁的原理&&特性2.3 互斥锁的计数器如何保证原子性2.4 互斥锁的接口2.4.1 初始化接口2.4.2 加锁接口2.4.3 解锁接口2.4.4 销毁接口2.5 什么是线程不安全,如何解决?1、线程不安全举例1.1 前提知识铺垫1、线程在Linux操作系统中也是用一个task_struct结构体来进行描述的。2、多个线程之间也是抢占式执行的。对于多核CPU来说,特们可以

2022-04-25 12:57:46 2912 16

原创 【C++】list模拟实现

list容器的模拟实现

2022-04-23 22:59:41 2487 12

原创 【C++】list容器介绍

文章目录1、list介绍2、list的底层结构3、list接口使用3.1 构造&&析构3.1.1 构造3.1.2 析构3.1.3 赋值运算符重载3.2 迭代器3.3 容量相关3.4 元素访问相关3.5 修改相关1、list介绍list是可以在常数范围内在任意位置进行插入和删除的序列式容器,并且该容器可以前后双向迭代。list的底层是双向循环链表结构,双向链表中每个元素存储在互不相关的独立节点中,在节点中通过指针指向其前一个元素和后一个元素。list与forward_list非常相似

2022-04-20 16:53:56 2622 6

原创 【C++】vector模拟实现

文章目录1、前提铺垫2、构造和析构析构模拟2.1构造相关2.2 析构相关的2.3 赋值运算符重载2.4 接口测试2.4.1 内置类型测试2.4.2 自定义类型测试3、迭代器相关接口模拟3.1 接口实现3.2 代码测试4、容量相关的接口模拟4.1 接口实现4.2 代码测试5、访问元素相关的接口模拟6、修改相关的接口模拟1、前提铺垫SGI版本的vector的底层管理方式与我们先前学习的数据结构部分的顺序表,略有差别。它在底层是通过迭代器(原生态的指针)来管理空间的。具体的定义如下:namespace gy

2022-04-16 15:57:56 1785 15

原创 【Linux】线程控制篇

文章目录1、线程创建1.1 接口介绍1.2测试入口函数的传参1.2.1 创建线程,查看线程的相关信息1.2.2 创建多个线程,通过传变量的值区分每一个线程1.2.2.1 传递局部变量1.2.2.2 传递全局变量1.2.2.3 传递堆空间开辟的变量1.2.3 入口函数传参的结论2、线程终止2.1 接口介绍2.2 场景模拟3、线程等待3.1 接口介绍3.2 代码测试4、线程分离4.1 接口介绍4.2 代码测试1、线程创建1.1 接口介绍int pthread_create( pthread_t *thr

2022-04-14 18:09:32 1833 15

原创 【C++】迭代器 && vector中迭代器失效

文章目录1、什么是迭代器?2、迭代器与指针3、迭代器的分类3.1具体分类3.2为什么要对迭代器分类?3.3迭代器的使用建议4、vector迭代器失效4.1迭代器失效及其危害4.2哪些操作会导致迭代器失效 && 如何解决1、什么是迭代器?在STL中,容器的迭代器(Iterator)被作为容器元素对象或者IO流中的对象的位置指示器.因此,我们可以把迭代器理解为面向对象的指针(一种泛型指针或通用指针),它不依赖元素的真实类型。如何理解这里的通用?迭代器的“通用”是概念上的一种通用。所

2022-04-13 12:28:38 1684 7

原创 【Linux】线程概念篇

文章目录1、什么是线程1.1线程和进程的关系1.2分析曾经写的代码2、内核角度理解线程3、线程的共享与独有3.1共享的内容:3.2 独有的内容4、线程的优缺点1、什么是线程线程是一个进程内部的控制序列,也被称为执行流,因为在执行用户编写的代码。1.1线程和进程的关系形象举例:工厂与流水线的关系流水线存在的前提是必须有工厂,一个工厂可以拥有多条流水线~将这样的关系映射到进程与线程中,可以得到如下结论:结论1:线程是依附于进程才能存在的,如果没有进程,线程无法单独存在结论2:多线程的存在是为了

2022-04-12 15:47:01 1932 22

原创 【C++】vector容器的使用

1、vector的介绍2、 vector常用的接口2.1 构造和析构相关2.2 迭代器相关2.3 容量相关2.4 访问元素相关2.5 修改相关

2022-04-11 11:37:35 1671 1

原创 【C++】string容器模拟实现

浅拷贝问题的解决---深拷贝 写时拷贝string的部分功能模拟实现

2022-04-09 14:50:13 1327 18

原创 【C++】string使用

string容器,接口使用

2022-04-08 19:06:29 4508 22

原创 【C++】模板

模板相关知识的总结

2022-03-30 09:45:46 703 33

原创 【C++】内存管理基础篇

C++内存管理基础知识

2022-03-28 09:51:43 219 5

原创 【Linux】进程信号篇

进程信号

2022-03-26 18:02:37 3481 20

原创 【C++】const关键字详解 && volatile关键字了解

const的特性 详解volatile关键字const volatile的组合关键字含义

2022-03-23 22:12:31 3025 37

原创 【Linux】进程间通信

进程间通信 管道共享内存消息队列 信号量

2022-03-22 12:38:13 1973 32

计算机+TCP socket编程 + 聊天系统中聊天功能的展示

计算机+TCP socket编程 + 聊天系统中聊天功能的展示

2022-08-03

空空如也

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

TA关注的人

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