- 博客(87)
- 收藏
- 关注
原创 二进制安装k8s
单 Master(不跑 Pod)+ 双 Worker Node | 独立 Etcd 集群:生产离线部署、无 kubeadm 环境、国内受限网络,已在国内环境实战跑通。
2026-05-07 14:24:29
335
原创 RedHat10-Ansible部署Docker操作
Docker 官方尚未发布 RHEL 10 专用仓库。当前 Playbook 中已使用 RHEL 9 的仓库路径作为兼容方案。RHEL 10 默认使用 cgroup v2。RHEL 10 默认预装 Podman。Playbook 第一步已卸载 Podman。Docker Compose V2 已作为插件安装,可直接使用。:下载 Docker 仓库元数据时报 GPG 错误。变量导致 Docker CE 仓库 404。(注意中间是空格,不是连字符)。只需要在主节点安装即可。可按需调整这两个参数。
2026-05-05 16:45:33
374
原创 AI掘金头条项目-K8s部署实战教程
序号步骤命令1拷贝代码到 master2修复 .dockerignore删除cache行3创建数据目录4构建并分发镜像5部署应用6检查 Pod7访问containerd 与 Docker 的关系K8s 1.24+ 默认使用 containerd 运行容器构建镜像仍需要 Docker / podman / nerdctlK8s 内部服务发现mysqlredisbackend应用代码中不需要 IP,直接用 Service 名称连接存储方案选型。
2026-05-03 18:54:03
385
原创 AI掘金头条项目部署实践指南
如果 MySQL 允许远程连接,可以使用服务器 IP,但需确保 MySQL 用户有对应主机的权限。被浏览器当成协议相对 URL,导致请求失败。
2026-05-02 19:57:24
537
原创 AI 掘金头条项目-用户模块、收藏模块以及Redis和调用大模型实现
user_info 对应的响应数据类:基础类 + Info类(id、用户名)"""⽤户信息基础数据模型"""nickname: Optional[str] = Field(None, max_length=50, description="昵称")avatar: Optional[str] = Field(None, max_length=255, description="头像URL")
2026-05-01 23:32:11
820
原创 AI 掘金头条项目-新闻模块实现
作用:用 Python 类映射数据库表结构,让 ORM 能操作数据库。继承 SQLAlchemy 的创建基类Base。为每个数据库表定义对应的模型类(如CategoryNews用tablename指定表名,用定义字段、类型、约束(主键、外键、索引等)。字段设计完全参照数据库表结构,确保一一对应。模型类规范:基类,继承数据库表模型类,继承基类属性及类型参照数据库表定义这是一张图片,ocr 内容为:模型类,就是对应表数据库表的字段DateTime,comment="创建时间"
2026-04-30 22:02:14
551
原创 FastAPI进阶教程
中间件是一个在每次请求进入 FastAPI 应用时都会被执行的函数。它像一道"关卡",在请求到达实际的路由处理函数之前拦截处理,并在响应返回给客户端之前再次执行。请求 → 中间件1 → 中间件2 → 路由处理函数 → 中间件2 → 中间件1 → 响应,即对象关系映射,是一种将面向对象编程语言与关系型数据库连接起来的技术。book = db.get(Book, 1) # 像操作对象一样操作数据库传统 SQLORM手动编写 SQL 字符串通过 Python 对象操作容易出现 SQL 注入风险。
2026-04-29 22:32:00
609
原创 FastAPI 基础指南:从入门到实战
FastAPI是一个基于 Python 的高性能 Web 框架,专门用于快速构建 API 接口服务。参数类型位置作用常用方法路径参数URL 路径的一部分指向特定资源GET查询参数URL?之后过滤、排序、分页GET请求体HTTP body创建、更新资源POST、PUT通过 Pydantic 模型严格定义 API 端点的输出格式,保障数据安全。id: inttitle: strreturn {"id": id,"title": f"这是第id本书",
2026-04-29 18:01:29
550
原创 MCP(模型上下文协议)简介
MCP(Model Context Protocol,模型上下文协议)是一种开放协议,旨在标准化大型语言模型(LLM)与外部数据源、工具之间的交互方式。它由 Anthropic 公司于2024年底提出并开源,目标是解决 AI 模型与外部系统集成时的碎片化问题。MCP 作为 AI 领域的“USB-C 接口”,正在重塑大模型与外部世界的连接方式。无论你是 AI 应用开发者、工具提供商还是企业 IT 团队,MCP 都提供了一套优雅、可扩展的集成方案。
2026-04-27 19:41:39
663
原创 LangChain入门教程
LangChain 2026 的核心是Agent旧模式(旧版本): Chain → LCEL → Memory → AgentExecutor新模式(v1.x): create_agent() ← 统一入口,内置 LangGraph。
2026-04-26 22:17:22
375
原创 prometheus-入门与安装
Prometheus(普罗米修斯)是一款开源的,最初由 SoundCloud 开发,2016 年加入 CNCF(云原生计算基金会),是继 Kubernetes 之后的第二个毕业项目。官网:https://prometheus.io/docs/introduction/overview/
2026-04-26 21:32:02
407
原创 SpringCloud微服务入门教程
微服务架构(Microservices Architecture)是一种将单一应用程序划分为一组小服务的设计模式,每个服务运行在自己的进程中,服务之间通过轻量级通信机制(如 HTTP/REST)协作。单一职责:每个服务只做一件事独立部署:服务可以独立开发、测试、部署去中心化:每个服务可选择最适合的技术栈轻量通信:通常使用 HTTP/REST 或消息队列数据独立:每个服务拥有自己的数据库。
2026-04-26 18:38:32
579
原创 RabbitMQ入门教程
模式交换机类型适用场景简单模式无(默认直连)点对点通信工作队列无任务分发、负载均衡发布订阅Fanout广播通知、全量推送路由模式Direct日志分级、定向通知主题模式Topic按规则匹配、灵活路由延迟队列订单超时取消、定时任务RabbitMQ 以其稳定可靠、功能丰富、社区活跃等优势,成为业界最广泛使用的消息中间件之一。掌握 RabbitMQ 是后端开发工程师进阶的必修课。
2026-04-26 18:33:18
415
原创 Linux 常用命令大全|新手 & 运维必备,日常开发直接复制即用
【文件操作】ls -la /path # 查看目录cd /path && ls # 进入并查看cp -r source/ dest/ # 递归复制mv old new # 重命名rm -rf /path # 强制删除(慎用)【文本处理】cat file | grep keyword # 搜索head -20 file # 查看前20行tail -f file # 实时查看awk -F: '{print $1}' file # 提取列【系统信息】top # 进程监控。
2026-04-25 13:57:45
537
原创 RAG与RAGFlow详解:从原理到应用
RAG全称是(检索增强生成),是一种将信息检索与大语言模型生成能力结合的技术架构。先查资料,再回答问题。传统大模型有个硬伤——知识截止于训练数据,遇到新问题或者私有数据就抓瞎。RAG的思路很聪明:不重新训练模型,而是让模型在回答前先去"翻书",把相关资料找出来,再基于这些资料生成答案。RAGFlow是一个开源的RAG引擎,由中国的InfiniFlow团队开发。让RAG开箱即用。RAG是当前大模型落地的关键技术之一,解决了知识时效性和私有数据的问题。
2026-04-23 18:20:26
602
原创 信创实战:银河麒麟 V10 服务器安装、网络配置与 Docker 环境搭建
本文我们完成了银河麒麟 V10 服务器的安装、静态 IP 配置以及 Docker 环境的搭建。安装时:推荐英文环境 + 勾选开发工具,记得开启网卡。网络配置:掌握nmcli是运维麒麟系统的必备技能,比修改配置文件更稳妥。Docker:利用兼容 CentOS 的特性,可以快速部署容器化应用。
2026-04-22 13:08:12
577
1
原创 共享文件服务NFS服务器:NFS实战详解
NFS(Network File System,网络文件系统)是一种允许不同计算机通过网络共享文件和目录的协议。核心功能:使得远程主机能够像访问本地磁盘一样访问和操作服务器上的文件。架构模式:基于客户端-服务器(Client-Server)架构。NFS服务器:将本地文件系统共享出去。NFS客户端:通过网络挂载共享目录,进行读写操作。应用场景:主要应用于 Linux/Unix 系统之间的文件共享。虽然支持跨操作系统,但兼容性相对较差。
2026-04-22 11:40:47
543
原创 Linux 时间同步服务:Chrony 深度笔记
chronyd是一个开源的自由软件,用于保持系统时钟与 NTP 服务器同步。它是chrony软件包的核心组件。
2026-04-22 10:17:25
792
原创 CICD基础概述
一个软件的生命周期包括:需求分析阶、设计、开发、测试、上线、维护、升级、废弃。项目的开发模型:瀑布模型、增量模型、敏捷模型通过示例说明如下:1、产品人员进行需求分析2、设计人员进行软件架构设计和模块设计。3、每个模块的开发人员并行开发,设计接口、进行编码,并进行单元测试在开发阶段,开发人员统一连接公司局域网的服务器(maven私服、数据库、Git仓库、项目管理软件)进行开发。4、开发完毕,将代码集成部署到测试服务器,测试人员进行测试。5、测试人员发现bug,提交bug、开发人员修改bug6、bug修改完毕再
2026-04-21 17:59:48
425
原创 大模型私有部署
Ollama提供了一个轻量级、易于扩展的框架,让开发者能够在本地机器上轻松构建和管理LLMs(大型语言模型)。通过Ollama,开发者可以访问和运行一系列预构建的模型,或者导入和定制自己的模型,无需关注复杂的底层实现细节。Ollama的主要功能包括快速部署和运行各种大语言模型,如Llama 2、Code Llama等。它还支持从GGUF、PyTorch或Safetensors格式导入自定义模型,并提供了丰富的API和CLI命令行工具,方便开发者进行高级定制和应用开发。特点:一站式管理。
2026-04-21 16:04:40
411
原创 Git版本控制工具(Linux运维CICD版)
项目管理工具,目前整个行业内最流行最受欢迎的项目版本管理工具开发者:Linus TorvaldsLinux的创始人Linux诞生以后,全球很多开发者开发了很多个版本的Linux,提交给Linus TorvaldsLinus Torvalds 将优秀的代码集成在Linux内核中,手动管理所有的代码Linus Torvalds 不喜欢传统的免费CVS等工具,因为这些工具不好用,好用的都收费Linus Torvalds 选择了一个商业化的工具,达成协议可以免费使用。
2026-04-20 22:50:23
578
原创 Python 运维实战:psutil 监控系统资源 + paramiko 远程管理服务器
psutil是一个跨平台的 Python 库,用于检索系统的运行信息,包括 CPU 使用情况、内存状态、磁盘信息、网络统计、进程信息等,非常适合运维和系统监控应用。下面是psutil的一些常见用法和应用示例。paramiko模块支持以加密和认证的方式连接远程服务器。可以实现远程文件的上传,下载或通过ssh远程执行命令。
2026-04-20 16:29:13
618
1
原创 Shell三剑客
awk不仅仅是Linux系统中的一个命令,更可以理解为它是一种编程语言,可以用来处理数据和生成报告(excel)。处理的数据可以是一个或多个文件,可以是来自标准输入,也可以通过管道获取标准输入,awk可以在命令行上直接编辑命令进行操作,也可以编写成awk程序来进行更为复杂的运用。本章主要讲解awk命令的运用。
2026-04-19 12:11:12
494
原创 MySQL的PXC高可用实战
维度评价数据安全⭐⭐⭐⭐⭐(零丢失,强一致)高可用性⭐⭐⭐⭐⭐(自动切换,透明运维)写入性能⭐⭐(受限于慢节点和流控)运维复杂度⭐⭐⭐(需理解流控、SST/IST 机制)一句话总结:PXC 牺牲了部分写入性能,换取了数据的绝对安全和架构的极度高可用,是 MySQL 生态中强一致性集群的代表方案之一。
2026-04-19 00:00:26
484
原创 MySQL面试题总结
B+ 树的平衡性、有序的叶子节点链表、以及对磁盘 I/O 的优化,共同构成了 MySQL 索引高效查询的基础。通过这种结构,数据库可以大幅减少磁盘访问次数,显著提升查询性能。最简回答:MySQL 索引底层使用B+ 树数据结构。它是一种平衡树,非叶子节点只存索引,叶子节点存数据并通过链表连接。这种结构通过减少磁盘 I/O 次数和支持高效的范围查询,实现了快速的数据定位和检索。
2026-04-18 14:01:55
351
原创 Java八股之JDK1.8 的新特性
JDK 1.8 引入了全新的日期和时间 API(java.time 包)。它提供了更好的处理日期、时间和时间间隔的方式,并且修复了旧 API 中存在的许多问题。Stream API 提供了一种用于处理集合和数组的声明性编程模型。它使得可以更直观地操作数据集合,如过滤、映射、排序等操作。它提供了一种简洁的方式来表示匿名函数,并使代码更易读、易写。这些示例代码展示了 JDK 1.8 中的一些新特性的使用。请注意,这只是一部分特性,还有更多特性可供探索和学习。
2026-04-18 11:32:21
52
原创 Java八股之GC 垃圾回收机制和OOM
垃圾回收器负责自动检测和回收不再使用的对象。它通过标记 - 清除、复制、标记 - 整理等算法来回收垃圾对象。垃圾回收过程包括标记、清除、整理和压缩等阶段。
2026-04-18 11:26:56
216
原创 Java八股之String、类加载器和双亲委派机制
Java 双亲委派机制是指在类加载过程中,类加载器会按照一定的顺序委派给父类加载器来尝试加载类。双亲委派机制是指类加载器在加载类时,首先将加载请求委托给父类加载器,只有当父类加载器无法加载时,才自己尝试加载。通过 Java 双亲委派机制,可以实现类加载的安全性和避免重复加载,同时也允许开发者自定义 ClassLoader 来实现特定需求的类加载行为。父类加载器在尝试加载类之前,也会先检查自己是否已经加载了该类,若加载了则直接返回;双亲委派机制可以确保类的加载安全性,避免了恶意类的加载和类的重复加载。
2026-04-18 11:24:11
205
原创 Java八股之sleep 和 wait 的区别
wait 是 Object 类的方法,对此对象调用 wait 方法导致本线程放弃对象锁,进入等待此对象的等待锁定池,只有针对此对象发出 notify 方法(或 notifyAll)后本线程才进入对象锁定池准备获得对象锁进入运行状态。sleep 是线程类(Thread)的方法,导致此线程暂停执行指定时间,给执行机会给其他线程,但是监控状态依然保持,到时后会自动恢复。最简回答:sleep 是线程休眠一段时间后继续执行,期间保持对象锁不释放;wait 是线程等待并释放对象锁,直到其他线程通知后才继续执行。
2026-04-18 11:21:07
20
原创 Java八股之重写(override)和重载(overload)的区别
重写(override)指的是子类重新实现了父类中已有的方法,子类的方法具有相同的名称、参数列表和返回类型兼容。简而言之,重写是对已有方法的重新实现,而重载是创建具有相同名称但不同参数的多个方法。是指在同一个类或同一个继承结构中的不同类中,存在多个方法具有相同的名称,但它们的参数列表不同(包括参数的个数、类型和顺序)。重载与方法的返回类型和权限修饰符无关,即重载方法可以有不同的返回类型和权限修饰符。返回类型必须与父类方法的返回类型兼容,类型相同或者在子类中使用父类方法返回类型的子类型。
2026-04-17 12:44:31
151
原创 Java八股之接口和抽象类的区别
接口是一种规范,它定义了一组方法的签名,而不包含具体实现。抽象类是一种可以包含具体方法和抽象方法的类,它可以被继承,但不能被实例化。简而言之,接口关注的是行为的规范,而抽象类关注的是共享的功能。抽象类中的成员变量可以是各种类型的,而接口中的成员变量只能是。一个类只能继承一个抽象类,而一个类却可以实现多个接口。抽象类可以提供成员方法的实现细节,而接口中只能存在。用于定义一组相关的类,提供默认的行为和共享的属性。可以包含已经实现的方法,但也可以包含抽象方法。定义了一组方法的骨架,可以包含具体实现。
2026-04-17 12:37:45
23
原创 Java八股之== 与 equals 区别
不能直接用于基本数据类型的比较,需要转换为其对应的包装类型。适用于比较基本类型的值或判断两个对象是否指向同一内存地址。比较的是对象的引用值,判断两个对象是否指向同一内存地址。用于比较对象的引用或基本类型的值是否相等,而。可以比较任意类型的对象,包括基本类型和引用类型。比较的是对象的内容,根据实现方式可能有不同结果。适用于比较引用类型对象的内容或自定义比较逻辑。方法用于比较对象的内容是否相等。通常用于比较两个引用类型对象。方法去实现对象内容的比较。对于基本类型,比较的是值。用于引用类型的比较时。
2026-04-17 11:53:31
28
原创 Java八股之JVM内存结构
Java 的内存结构主要包括方法区、堆、虚拟机栈、本地方法栈和程序计数器。方法区用于存储类信息,堆用于存储对象实例,虚拟机栈用于存储方法调用和局部变量,本地方法栈用于存储非 Java 方法信息,程序计数器用于记录当前线程执行的指令地址。
2026-04-17 11:04:08
43
原创 Java八股之反射
在 Java 的世界里,我们通常是在编译期就确定了一个对象的类型,然后new出它的实例。但在很多高级框架(如 Spring、MyBatis)中,程序在编译时根本不知道要加载哪个类,只有在运行时才能动态地获取类信息并创建对象。这种“在运行状态中,对于任意一个类,都能知道它的所有属性和方法;对于任意一个对象,都能调用它的任意方法和属性” 的能力,就是 Java 的反射机制。简单来说,反射让 Java 变成了一种“准动态语言”,赋予了代码极强的扩展性。反射是 Java 框架的基石。
2026-04-17 10:49:55
308
原创 Java八股文之String/StringBuffer/StringBuilder区别
String 是不可变的字符串,每次修改都会创建新的对象,适用于不经常修改的字符串操作;StringBuffer 是可变的字符串,线程安全,适用于多线程环境;StringBuilder 也是可变的字符串,但不是线程安全的,适用于单线程频繁修改字符串的场景。
2026-04-16 16:58:37
477
原创 Redis
数据类型核心特点关键记忆口诀String键值对万物皆可字符串,计数锁存全靠它。List有序可重头尾能推能弹,时间线队列自然来。Set无序唯一ZSet有序唯一带分数分数决定排位赛,排行榜上显神通。Hash字段值对对象存储省空间,字段更新最灵活。这些命令都可以通过使用help @数据类型来查看帮助语法机制文件体积恢复速度数据安全性默认文件RDB小极快较差(丢得多)dump.rdbAOF大慢较好(丢得少)混合持久化中等快好(内容混合)
2026-04-16 15:45:33
1016
原创 力扣hot100之最大子数组和(Java版)
动态规划 = 最优子结构 + 重叠子问题 + 状态定义 + 状态转移 + 初始条件 + 计算顺序简单理解一下动态规划(Dynamic Programming,简称 DP)是一种解决复杂问题的聪明办法把大问题拆成小问题,先解决小问题,再用小问题的答案一步步推出大问题的答案。动态规划 = 记住已经算过的,别重复干傻事,从小问题一步步推出大答案这是解决此问题的标准解法。核心思想是:如果前面的子数组和变成了负数,那就果断丢弃,从当前元素重新开始计算。
2026-04-14 07:57:33
594
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅