自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【Redis/2】核心特性、应用场景与安装配置

本文全面介绍了Redis的核心概念、特性、应用场景及实践操作,分为四个主要部分:初识Redis、安装与基础操作、重要文件与作用、命令行客户端使用

2025-06-08 18:19:13 456

原创 【C语言】深入理解C语言中的自定义数据类型:struct、union与enum

本文介绍了C语言的自定义数据类型:struct、union、enum类型,包括其存储方式、内存大小、使用场景、成员类型等。

2025-05-28 22:26:01 809

原创 【C++】深入理解C++中的函数与运算符重载

本文介绍了C++中的虫子啊,包括函数重载与运算符重载,以及具体的注意事项、比如重载的二义性,默认参数和重载、运算符重载的成员函数与非成员函数、重载与基础以及一些细节问题。

2025-05-24 19:38:44 747

原创 【C/C++】深入理解整型截断与提升:原理、应用与区别

整型截断是当较大类型转换为较小类型时,数据的高位部分被丢弃。它可能会导致数据丢失或溢出,开发者需要小心使用。整型提升是在算术运算中,较小的整数类型会被提升为int类型或更大的类型,避免了精度丧失或溢出,保证了计算结果的正确性。理解这些概念,尤其是在进行类型转换和数值计算时,可以帮助开发者更好地处理数据类型,避免错误和不必要的性能问题。

2025-04-14 19:08:11 1019

原创 【Docker基础】Compose 使用手册:场景、文件与命令详解

是 Docker 官方的开源项目,使用 Python 编写,调用 Docker 服务的 API 来管理和编排容器。官方定义为:定义和运行多个 Docker 容器的应用。服务(Service):一个应用的容器,通常包括多个运行相同镜像的容器实例。项目(Project):由一组相关的应用容器组成的完整业务单元,在文件中定义。整个文件定义了一个项目。Compose 的默认管理对象是项目,通过子命令对项目中的一组容器进行简化的生命周期管理。通过 compose 可以方便的管理多个服务。

2025-04-13 17:59:16 1270 1

原创 【Docker基础】深入解析 Docker 存储卷:管理、绑定与实战应用

存储卷是指将宿主机的本地文件系统中的某个目录与容器内部文件系统中的目录建立绑定关系。具体来说,当我们在容器中的某个目录下写入数据时,容器会将数据直接写入宿主机上与该容器绑定的目录。宿主机上与容器形成绑定关系的目录被称为存储卷。存储卷的本质是文件或目录,它绕过默认的联合文件系统,直接以文件或目录的形式存在于宿主机上。例如,宿主机的/data/web目录与容器的目录形成绑定关系。当容器中的进程向该目录写入数据时,数据会直接写入宿主机的/data/web目录。

2025-04-12 19:26:23 989 1

原创 【Docker基础】容器技术详解:生命周期、命令与实战案例

首先,我们了解了镜像,容器可以被视为镜像的实际运行实例。镜像本身是一个静态且只读的文件,而容器则在此基础上附加了一个可写的文件层,这使得容器能够运行需要的进程。简单来说,容器是运行着实际应用进程的实体。创建、运行、停止、暂停和删除。容器本质上是主机上一个运行的进程,但它通过独立的命名空间隔离和资源限制与主机进程区分开来。在容器内部,无法直接访问主机上的进程、环境变量或网络等信息,这也是容器与直接在主机上运行的进程之间的关键区别。容器是基于镜像创建的可执行实例,且可以独立存在。

2025-04-10 22:23:18 956 1

原创 【Docker基础】全面解析 Docker 镜像:构建、使用与管理

Docker 镜像通常与容器、Dockerfile、Docker Hub、Docker Compose、网络、卷、CI/CD 工具和容器编排工具(如 Kubernetes 或 Docker Swarm)一同使用。它们共同构成了容器化应用的基础设施,帮助开发、测试、部署和管理容器化应用。

2025-04-09 20:22:42 1427 1

原创 【C/C++】编译与链接过程详解

如果程序中引用了一个未定义的符号(如函数或变量),链接器会报出“未定义符号”的错误。例如,调用了某个函数,但该函数的实现没有包含在目标文件或库文件中。检查是否忘记包含某个源文件或库文件。确保函数或变量已经正确定义。

2025-04-05 22:03:46 940

原创 【Python学习】列表/元组等容器的常用内置函数详解

本文主要探讨了 Python 中常用的内置函数,即它们在容器类型(如列表、元组)中的应用。下面将逐一介绍如 `map`、`filter`、`sorted`、`any`、`all`、`zip`、`enumerate`、`reverse`、`sum`、`max` 和 `min` 等函数,并通过示例分析它们的使用方法与实际效果。

2025-04-05 16:57:59 842

原创 【Go语言快速上手】第一部分:数据类型(数组、切片、映射)与控制语句

切片是基于数组的一个引用类型,它没有固定的长度,可以动态增长。切片包含三个要素:指向底层数组的指针、切片的长度、切片的容量。映射是由键值对组成的集合,Go 中的映射是引用类型。每个键都对应一个值,且每个键在映射中是唯一的。如果使用一个已经存在的键进行赋值,旧的值将被替换。结构体通过type关键字定义,通常每个字段都有一个名称和类型。Field2 type2 // 可以继续添加其他字段 }Age intp.Greet() // 输出: Hello, my name is John在上述例子中,Greet。

2025-03-02 18:14:19 1186

原创 【Go语言快速上手】第一部分:函数与错误处理

在Go语言中,通过funcfunc:关键字,用于定义函数add:函数名:参数列表,参数类型在参数名之后int:返回值类型。:函数体,返回两个整数的和。这行代码定义了一个方法,该方法与Rectangle类型关联。是方法的接收者,表示area方法是为Rectangle类型定义的。这里的r是一个Rectangle类型的值,它代表一个矩形对象。area()是方法的名称,表示该方法会计算矩形的面积。float64是方法的返回值类型,表示计算出的面积是一个float64类型的值。

2025-02-28 21:03:06 866

原创 【Docker基础】理解 Registry 镜像仓库:分类、工作机制、命令与实操

Docker Registry(镜像仓库)是一个负责存储、管理和分发 Docker 镜像的系统。它的作用类似于代码的版本控制系统,只不过它管理的是 Docker 镜像而非代码文件。Docker Registry 提供了镜像的存储、检索、版本管理等功能,并且具备用户认证和索引功能。功能该命令用于登录到 Docker 镜像仓库(如 Docker Hub 或私有镜像仓库)。登录后,可以进行镜像的推送和拉取等操作。语法关键参数:指定用户名。:指定密码(不推荐在命令行中直接使用密码)。

2025-02-26 22:17:22 1140 1

原创 【Docker基础】理解 Docker:本质、性质、架构与核心组件

LXC:早期的容器技术,现已被 Docker 替代。:Docker 自主开发的容器实现,后与runc合并。Moby:Docker 开源项目,包含 Docker 引擎的核心。docker-ce:Docker 开源社区版。docker-ee:Docker 企业收费版,提供额外的企业级功能。

2025-02-25 23:01:58 1599 1

原创 【Shell编程 / 9】脚本实战项目:从基础到进阶的自动化管理方案

通过参与一些实际的项目,我们可以更加熟练地运用 Shell 脚本来自动化任务,提升工作效率。通过 Shell 脚本,可以实现文件从本地到远程服务器,或者从一个服务器到另一个服务器的自动传输。是最常用的定时任务管理工具。通过 Shell 脚本,用户可以简化定时任务的添加、删除和查看操作,避免手动编辑 crontab 文件。通过编写自动化部署脚本,我们可以将繁琐的部署过程简化,确保部署的一致性和效率。下面是一个简单的系统监控脚本,用于检查系统资源使用情况,如 CPU、内存、磁盘等,并将结果输出到日志文件中。

2025-02-22 21:58:38 871

原创 【Go语言快速上手】第二部分:Go语言进阶之工具与框架

在 Go 语言开发过程中,掌握常用的工具和框架能够提高开发效率和代码质量。Go 提供了许多内置工具来帮助开发者进行代码格式化、静态检查、单元测试等操作。同时,Go 的 Web 框架和 ORM 框架也大大简化了 Web 应用和数据库交互的开发工作。本文将介绍 Go 中的常用工具、Web 框架和 ORM 框架。

2025-02-22 19:34:47 1126 1

原创 【Python 学习 / 7】模块与文件操作

在 Python 中,模块是一个包含一组函数、类、变量和可执行代码的文件。模块的主要作用是让我们能够将代码分成不同的文件,使得代码结构更加清晰、易于管理和复用。模块是 Python 代码的组织方式,可以提高代码的可复用性和模块化。可以通过import或来导入模块。常用的模块包括mathrandomossys等,涵盖了从数学计算到操作系统交互的各个方面。文件处理通过open()read()write()等函数来读取和写入文件,可以使用with语句自动管理文件资源。日期时间处理通过datetime。

2025-02-19 22:23:23 684

原创 【Go语言快速上手】第二部分:Go语言进阶之测试与性能优化

Go 语言提供了强大的测试框架来进行单元测试、基准测试,并通过pprof工具进行性能分析。在这部分内容中,我们将介绍如何编写单元测试和基准测试,使用pprof进行性能分析,以及一些常见的代码优化技巧。

2025-02-19 21:38:00 870

原创 【Python学习 / 6】面向对象编程(OOP)

面向对象编程 (OOP) 是一种编程范式,它使用“类”和“对象”来组织代码。在 Python 中,面向对象编程通过类(Class)和对象(Object)来实现。类是对象的模板,而对象是类的实例。OOP 允许我们模拟现实世界中的事物和行为,具有封装、继承和多态等特性。好的!我将对文章进行优化,并使内容更加详细、易于理解。Dog装饰器是 Python 中的一种非常强大的功能,允许你在不修改函数本身代码的前提下,动态地修改或增强函数的行为。

2025-02-18 22:22:35 617

原创 【Go语言快速上手】第二部分:Go语言进阶之数据库操作

Go 语言通过内置的包支持关系型数据库的操作,同时也支持通过第三方库与 NoSQL 数据库进行交互。你可以通过标准的 SQL 操作与关系型数据库(如 MySQL、PostgreSQL)进行交互,也可以使用专门的库来连接 NoSQL 数据库(如 MongoDB、Redis)。本篇博客将介绍如何在 Go 中操作关系型数据库与 NoSQL 数据库。

2025-02-18 20:40:44 994 1

原创 【Python 学习 / 5】函数详解(定义、参数、作用域、lambda、内置函数)

在Python中,使用def关键字来定义一个函数。函数名后面跟一对小括号,括号中可以放参数。函数体需要缩进。")# 调用函数greet() # 输出: Hello, World!

2025-02-17 22:40:39 1150

原创 【Go语言快速上手】第二部分:Go语言进阶之网络编程

Go 语言提供了强大的网络编程能力,支持 TCP/UDP 协议的开发、HTTP 服务的构建,以及 WebSocket 协议的支持。通过内置的net和net/http包,Go 使得网络编程变得简洁高效。我们也可以使用第三方库,如来简化 WebSocket 的使用。

2025-02-17 22:21:43 1218

原创 【Go语言快速上手】第二部分:Go语言进阶之并发编程

可以在发送数据时不必立即等待接收方,直到缓冲区满或接收方取走数据。包,包含了多种同步原语,帮助开发者在并发程序中处理共享数据和同步问题。,可以安全地传递数据,避免了数据竞争问题。会在发送数据和接收数据时进行同步,确保发送和接收操作相互配合。是 Go 中最基本的并发单元,可以认为是轻量级的线程。包中的多种同步原语,用于处理并发程序中的共享资源访问问题。同时读取共享资源,但在写操作时会阻止其他的读写操作。的缓冲区大小为 2,可以在不立即接收的情况下向。,并发执行指定的函数或方法。时,可以指定缓冲区的大小。

2025-02-17 10:00:13 1019

原创 【Python 学习 / 4】基本数据结构之 字符串 与 集合

在Python中,集合是可变的数据类型,集合的元素必须是不可变类型(如数字、字符串、元组等)。Python中的字符串是Unicode编码,而在处理文件或者网络通信时,可能需要将字符串转化为字节流(bytes)。在Python中,字符串是不可变类型,即一旦创建就不能修改其中的字符。集合是非常适合用于去重和进行集合运算的工具,可以高效地进行元素的查找、插入、删除等操作。来创建字符串,也可以使用三引号(单引号或双引号)来创建多行字符串。字符串支持切片操作,可以截取字符串的一部分。方法删除集合中的元素。

2025-02-16 21:15:00 831

原创 【Shell编程 / 7】定时任务:Cron和at命令的设置与应用

是 Unix 和类 Unix 系统中的定时任务管理工具,它可以用来在指定的时间间隔内定期执行任务。在日常的运维和自动化管理中,经常需要执行定期任务。通过这些工具,用户可以在特定时间或周期性地自动执行命令或脚本,减少人工干预,提高工作效率。用于执行一次性的任务,而非定期任务。这将任务安排在 2025 年 12 月 25 日下午 2 点执行。这将打开默认编辑器,你可以在里面添加或修改定时任务。这将任务安排在当前时间的 1 小时后执行。是另一个用于执行定时任务的工具,但与。,它定义了任务的执行时间和执行内容。

2025-02-06 21:52:23 816

原创 【Go语言快速上手】第一部分:Go 语言基础

为了解决这些问题,Google 的三位资深工程师——Robert Griesemer、Rob Pike 和 Ken Thompson(Unix 和 C 语言的共同创始人)——于 2007 年开始设计一门新的编程语言,这就是 Go 语言的雏形。Go 语言的设计哲学是“少即是多”,它摒弃了复杂的语法和冗余的特性,致力于提供一种简单而强大的编程体验。指针接收者是指方法接收的是类型的指针,这使得方法可以直接修改原对象的字段值。值接收者是指方法接收的是该类型的副本,这意味着方法中修改的只是副本,而不会影响原对象。

2025-02-06 21:45:57 1921

原创 【Shell编程 / 8】脚本优化与高级功能:提高效率与自动化管理

在编写 Shell 脚本时,常常会遇到需要重复使用的功能或工具。为了提高脚本的复用性和可维护性,我们可以将这些常用的函数封装到脚本库中。这样,多个脚本就可以共享同一组功能,提高开发效率。创建脚本库假设我们有一个需要经常使用的函数库文件,可以将常用的函数存储在这个文件中:thenelsefi在脚本中引用库在主脚本中,通过source或命令引入库文件,从而可以使用库中定义的函数:脚本库的目录结构组织脚本库的目录结构是非常重要的。

2025-02-02 18:31:22 1114

原创 【Pytest】基础到高级功能的理解使用

pytest是一个功能强大的 Python 测试框架,专为编写简单、可扩展的测试而设计。它是 Python 中最受欢迎的测试工具之一,广泛应用于单元测试、集成测试以及功能测试等领域。pytest提供了清晰易懂的语法,并且可以轻松与其他测试框架(如unittest)兼容使用。pytest的夹具是用来在测试运行之前或之后执行某些准备工作和清理工作的。通过夹具,可以实现数据库连接、文件创建等操作,并在多个测试之间共享这些资源。

2025-01-21 21:50:24 832

原创 【Sanic 框架 / 2】进阶与实战:高级功能与项目开发

Sanic 支持插件的开发,允许我们为应用程序扩展功能。可以通过定义插件类来实现自定义插件。插件类需要继承自类,并实现方法以在应用启动时进行初始化。")"})app.run()此插件会在应用启动时输出日志。可以为后台任务定义定时器或周期性任务,Huey")该任务将每分钟执行一次。

2025-01-20 21:29:45 1119

原创 【Sanic 框架 / 1】深入学习:从入门到进阶

Sanic是一个基于Python的异步Web框架,它使用Python的asyncio库实现高效的异步请求处理,适合高并发环境下的Web应用开发。Sanic的设计理念是轻量级且高性能,特别适用于需要处理大量并发请求的应用,比如实时聊天、推送通知、API服务等。与传统的同步Web框架相比,Sanic利用异步特性,通过async和await语法大幅提升了Web服务的响应能力,能够同时处理多个I/O密集型任务,而不会阻塞服务器的主线程。

2025-01-19 20:03:14 1121

原创 【Tortoise-ORM】 高级特性与实战

假设我们正在开发一个简单的任务管理应用,用户可以创建任务、查看任务列表、更新任务状态以及删除任务。我们的任务模型包括任务的标题、描述、状态(待办、进行中、已完成)和创建时间。设计数据库模型。使用Tortoise-ORM进行数据库操作。在FastAPI中应用这些操作,处理前端请求。通过这个实战项目,我们学会了如何在实际应用中应用Tortoise-ORM,设计数据库模型,并将这些操作与FastAPI集成。

2025-01-19 17:38:29 1705

原创 【Python 基础学习 / 1】变量、数据类型与流程控制

在 Python 中,变量用来存储数据。与其他编程语言不同,Python 是动态类型语言,即在定义变量时不需要显式声明其类型。Python 会根据赋给变量的值来自动推断变量的类型。x = 10x存储一个整数10。name存储一个字符串"Alice"。is_active存储一个布尔值True。运算符是执行特定操作的符号,可以操作数据类型并返回结果。Python 提供了多种不同类型的运算符,包括算术运算符、比较运算符、逻辑运算符等。

2025-01-16 20:41:25 1014

原创 【Shell编程 / 6】正则表达式与模式匹配(grep、sed、awk)

正则表达式(Regular Expression,即Regex)用于匹配字符串中的特定模式。扩展正则表达式(Extended Regular Expression, ERE)比基本正则表达式功能更强大,支持更多的元字符和模式。基本正则表达式(Basic Regular Expression, BRE)是一种较为简单的正则表达式形式,主要用于匹配基本的字符串模式。是一个强大的文本处理工具,可以基于正则表达式对文本进行模式匹配和操作。是一种强大的文本搜索工具,支持基本和扩展正则表达式。参数可以使用扩展正则。

2025-01-16 20:23:48 1063

原创 【Tortoise-ORM】 基础与数据库操作

ORM(Object-Relational Mapping)是一种用于将对象模型与关系型数据库表格之间进行映射的技术。简单来说,ORM 允许开发者以面向对象的方式操作数据库,而不必直接编写 SQL 查询语句。传统的关系型数据库(如 MySQL、PostgreSQL)使用表格来存储数据,而对象导向编程语言(如 Python)使用对象来表示数据。ORM 通过创建数据库表与类之间的映射关系,简化了数据存取的操作,并在底层自动生成 SQL 语句,从而提高开发效率,减少了开发者与数据库的直接交互。

2025-01-16 20:20:50 2460

原创 【Shell编程 / 5】文件操作、进程控制与错误处理技巧

在 Linux 系统中,进程管理是非常重要的,尤其是在进行系统监控、脚本编写或开发后台服务时,理解如何管理进程能帮助你更好地掌控系统资源、优化程序运行。在 Shell 中,重定向和管道是非常有用的工具,可以将命令的输出传递给文件或另一个命令,进而实现更复杂的数据处理。我们可以使用不同的命令来查看系统中正在运行的进程,并获取有关每个进程的信息。通过检查退出状态码,我们可以在脚本中做出不同的反应,确保在出现错误时能够做出相应的处理。是一个简单的命令,用于统计文件的行数、字数和字符数,常用于文本文件的基本分析。

2025-01-06 08:52:42 855

原创 【Shell编程 / 4】函数定义、脚本执行与输入输出操作

Shell 允许 在脚本中定义函数,以便将常用的功能模块化,从而使得代码更加简洁易懂。# 函数体# 执行操作我们也可以使用function# 函数体# 执行操作。

2025-01-05 09:46:15 646

原创 【Shell编程-3】流程控制:条件判断与循环结构详解(if、for、while、case)

在 Shell 脚本中,流程控制语句是用来根据不同的条件或需求执行不同操作的关键。流程控制包括条件判断、循环结构以及选择语句,它们为脚本的逻辑构建提供了灵活性。掌握这些控制结构,可以使你编写出更复杂、功能更强大的脚本。条件判断用于根据表达式的结果(真或假)来决定是否执行某个代码块。循环结构用于反复执行某段代码,直到满足某个条件为止。循环用于遍历一组值,通常用于数组或范围内的值迭代。是 Shell 中的基本条件判断结构,用来执行不同的代码块,基于一个条件的真假。循环中的判断条件反过来使用。

2025-01-05 09:33:32 512

原创 【Shell编程-2】算术运算、字符串与文件操作精通

之前我们学习了 Shell的历史与其基本命令,以及Shell的变量与常量,接下来学习其基本运算。

2025-01-05 09:19:43 347

原创 【Shell编程-1】Shell的历史发展与基础命令、变量、常量

Shell是一种命令行界面(CLI),用来与操作系统交互,它提供了一种与计算机系统进行通信的方式。Shell 是操作系统的命令解释器,负责接收用户输入的命令并将其传递给操作系统内核执行。它的主要作用是通过命令行控制操作系统和应用程序。Shell最早起源于 Unix 系统,它为用户提供了一个便捷的接口,使用户能够执行各种操作,如文件管理、程序执行、系统监控等。Bash(Bourne Again Shell):是最常用的 Shell,尤其是在 Linux 和 macOS 系统中。

2025-01-05 09:14:15 826

原创 【Linux】资源控制机制 — cgroups 详解

Cgroups(控制组)是 Linux 内核提供的一项功能,旨在对一组进程进行资源分配、限制、优先级调整和监控。通过 Cgroups,系统管理员可以将进程组织成多个组,并对这些组的资源使用情况进行控制和管理。Cgroups 允许用户对 CPU、内存、磁盘 I/O、网络带宽等资源进行细粒度的管理,能够限制、优先分配或监控这些资源,确保系统资源在多个进程或容器之间合理分配。

2024-12-23 15:15:33 2202

空空如也

空空如也

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

TA关注的人

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