聚焦学生开发者需求,分享课设毕设项目实战经验、系统开发技巧、数据库设计规范及文档排版实用方法。

专注于课设、毕设系统开发与写作规范,内容贴近实际教学场景,帮助学生高效完成项目与论文。

  • 博客(532)
  • 资源 (1)
  • 收藏
  • 关注

原创 Python 零基础入门:30 分钟掌握核心语法(附 2 个实战小项目)

本文为零基础新手量身定制的30分钟Python入门指南:3分钟环境配置,15分钟掌握变量、f-string、列表、条件判断、循环与函数六大核心语法,再用6分钟实现命令行记账本,6分钟完成猜数字游戏。全程实战导向,代码可直接运行,帮助初学者快速获得正反馈,突破“学完就忘”的困境。附常见5大坑提醒,助你少走弯路。

2026-10-23 10:16:12 154

原创 Python 实战教程:文件读写、try-except 异常处理与 JSON 存储(附完整案例)

本文针对初学Python者在文件与异常处理中的常见痛点,结合背单词工具实战案例,系统讲解三大核心技能:使用pathlib与with安全读写文件,通过try-except实现异常捕获与友好提示,以及用json模块以标准化格式持久化存储数据。文章强调编码规范、错误恢复与数据安全,最后整合成可直接复用的完整项目模板,帮助读者从“程序跑通”迈向“程序可靠”。

2026-10-22 09:49:58 146

原创 C++ 异常处理实战:try/catch、栈展开(stack unwinding)、异常重抛与工程规范

本文针对已掌握C++基础但对异常处理仅限于“见过try-catch”的开发者,深入解析异常机制的核心原理。通过实测代码详解栈展开过程:异常抛出后,程序自动沿调用栈回退,逐层析构局部对象,确保资源安全释放,体现RAII优势。重点区分throw;(原样重抛,保留类型信息)与throw e;(切片重抛,丢失派生类信息)的致命差异,并给出编码规范:统一抛对象、按派生类优先捕获、使用const引用避免切片。帮助读者摆脱错误码嵌套困境,实现高效、安全的错误处理。

2026-10-21 12:30:18 100

原创 C++ 入门避坑指南:namespace、缺省参数、函数重载与引用一次讲透

本文面向从C语言过渡到C++的初学者,结合Ubuntu 22.04 + g++ 11.4环境,通过实际代码详解C++四大核心特性:命名空间(解决名字冲突)、缺省参数(函数默认值)、函数重载(同名不同参)和引用(变量别名)。内容涵盖基本用法、常见坑点(如缺省参数必须从右向左连续、重载与缺省组合易引发二义性),并辅以nm命令揭示函数重载底层原理。强调最佳实践,如避免在头文件中使用using namespace std;,确保代码可读性与可维护性。

2026-10-20 11:29:33 263

原创 Java String 类深度解析:底层 char[] 与常量池、内存模型及性能优化

本文深入解析 String 的不可变性、常量池机制及常见使用陷阱,帮助开发者理解底层原理。重点涵盖 String 不可变的实现(final char[])、常量池运作逻辑、== 与 equals() 正确用法、拼接性能优化(避免循环 +,优先 StringBuilder)、substring 内存泄漏风险(JDK 6 问题)及安全实践(如敏感数据用 char[])。结合编码规范,提升代码安全性与性能,规避线上隐患。

2026-10-16 09:43:01 229

原创 Java SE 抽象类与接口:abstract class 和 interface 对比详解

本文清晰解析抽象类与接口的核心区别:抽象类侧重“is-a”关系,支持代码复用,单继承;接口强调“can-do”行为规范,支持多实现,可定义默认方法和静态方法。开发中应根据是否需共享代码、是否多行为叠加来选择。推荐组合使用:抽象类主干复用,接口扩展能力。附可运行示例,助初学者理清概念,解决面试困惑。

2026-10-14 09:57:52 172

原创 Java 初学者指南:IntelliJ IDEA 合法免费使用的 3 种方案

学Java无需破解IntelliJ IDEA!学生可申请JetBrains教育授权,免费使用Ultimate版;非学生用户推荐免费开源的Community版,功能完全满足入门学习。二者均合法稳定,避免安全与法律风险。若想尝鲜新特性,可试用EAP预览版。拒绝破解,选择正规途径,安心高效学编程。

2026-10-13 09:58:43 318

原创 # Docker 核心概念解析:从镜像、容器到仓库的完整实践指南

本文以 Spring Boot + MySQL 为例,通俗解析 Docker 的三大核心概念:镜像(只读模板)、容器(运行实例)和仓库(镜像分发中心)。通过 Dockerfile 构建镜像,docker run 启动容器,结合 Volume 保障数据持久化,并利用 Docker Compose 管理多服务协同。强调生产环境应使用明确版本标签或 digest,避免依赖 latest,实现开发、测试与部署环境一致性,解决“在我机器上能跑”的痛点。

2026-09-16 11:44:11 199

原创 接口 P99 从 1.8 秒降到 180ms:我用慢查询日志揪出 Spring Boot 的 N+1 查询

这次事故给我的教训很简单:后端性能优化,很多时候不是换框架、加机器,而是把一段“看起来很自然”的代码放到真实并发下重新审视。遇到接口变慢时,我现在固定按这个顺序排查:请求耗时分布 → SQL 数量 → 慢查询和执行计划 → 连接池等待 → CPU、IO 和网络。先定位瓶颈,再决定要不要调参数或加资源,效率会高很多。如果你也遇到列表接口越查越慢,先检查循环里有没有数据库调用。这个坑不高级,但真的特别常见。

2026-09-16 06:53:41 286

原创 HTTPS 设计全貌:从 HTTP 到 TLS 1.3 的五轮迭代

本文从威胁模型出发,系统解析HTTPS如何通过五轮演进解决HTTP的三大安全短板:窃听、篡改与冒充。依次阐述加密、非对称密钥交换、数字证书(PKI)、TLS 1.3前向保密及工程实践(如HSTS、Cookie安全、代理链路保护),揭示其设计本质——在密码学与工程现实间平衡安全性与可用性。最终指出:HTTPS保障传输链路安全,但不等于应用层绝对可信。

2026-09-14 13:10:49 340

原创 深入理解 Redis:String/List/Hash 的底层编码策略与单线程性能陷阱

<think>我们根据用户要求,需要根据给定内容生成≤150字的文章摘要。内容很长,需要提炼核心。摘要要概括文章主旨:面向后端/Java工程师,解释Redis五种数据结构的对外接口和底层编码(int/embstr/raw、ziplist/listpack等),强调理解底层设计的重要性,如44字节阈值、quicklist演进、连锁更新问题。摘要需简洁,≤150字。注意用户说“根据以下内容,生成≤150字的文章摘要”,我们需要输出摘要,不包含其他。确保字数。 先组织语言:文章面向Redis使用者,剖析双重结构:

2026-09-09 10:07:56 325

原创 JavaScript 继承进阶:组合继承缺陷与寄生组合继承优化方案

JavaScript 继承进阶:组合继承缺陷与寄生组合继承优化方案

2026-08-28 09:37:26 351

原创 数据库技术2026趋势:NewSQL 交易底座、向量检索引擎与多模融合架构的全域演进

数据库技术2026趋势:NewSQL 交易底座、向量检索引擎与多模融合架构的全域演进

2026-08-27 09:43:05 345

原创 JavaEE初阶: 计算机网络TCP/IP协议栈原理入门详解

本文针对JavaEE初学者常见的网络编程痛点,从实战角度解析核心网络原理。文章强调掌握TCP/IP协议栈对Java开发的重要性,重点讲解端口、TCP/UDP区别、三次握手/四次挥手等关键概念,并提供极简Socket代码示例。作者结合自身经验,总结端口占用、连接超时、数据粘包等常见问题的排查方法,帮助新手从"会写代码"进阶到"懂原理会排错"。全文摒弃晦涩理论,聚焦JavaEE开发必备的网络知识,为后续学习HTTP、SpringBoot等打下基础。

2026-08-26 14:13:15 277

原创 Redis 入门实战:从五种数据结构到 Spring Boot 集成的完整指南

Redis 入门指南:从零到精通的实用教程 本文是为有 Java 基础但 Redis 零基础的后端开发者编写的入门指南。作者从自身踩坑经验出发,详细介绍了 Redis 的核心概念和使用方法。 主要内容包括: Redis 简介:内存键值数据库,特点为高速、丰富的数据结构和持久化能力 安装配置:Linux/macOS/Windows 环境下的安装方法及基础配置 五大核心数据结构详解:String、List、Hash、Set 和 Sorted Set 的使用场景与命令键的通用操作及注意事项

2026-08-25 09:44:21 221

原创 Java 异常体系深度解析:从 Throwable 到自定义异常的最佳实践

本文系统梳理了Java异常处理机制,面向Java初学者和中级开发者。文章从异常体系总览入手,指出Throwable是异常类的根类,其子类Error表示JVM层面的严重错误,程序不应捕获;而Exception分为受检异常(如IOException)和非受检异常(如NullPointerException)。受检异常需强制处理,适用于可恢复场景;非受检异常多由代码逻辑错误引起,应通过防御性编程避免。 文章对比了两类异常的适用场景,并结合Spring Boot项目经验提出实践建议:外部依赖失败用受检异常,逻辑错误

2026-08-24 11:43:57 384

原创 Python零基础入门到精通全教程:从基础语法到项目实战

本文为零基础学习者提供系统化的Python学习指南,涵盖环境搭建、核心语法、进阶知识和实战项目。教程强调实操性,避开冗余知识点,从变量、循环等基础到函数、模块等进阶内容,逐步提升编程能力。文章还规划了4阶段学习路线,帮助新手从入门到精通,最终具备独立开发能力。所有代码均经过验证,适合长期系统性学习。

2026-08-21 10:39:53 278

原创 Java 异常体系:异常分类、捕获机制与自定义异常实战解析

摘要: 本文针对Java初学者和入门开发者,系统讲解异常处理的核心知识。首先区分Error(不可控系统错误)和Exception(可处理代码异常),后者分为编译时异常(强制捕获)和运行时异常(逻辑错误)。重点解析try-catch-finally标准用法、throws/throw的应用场景,并提供带注释的实战代码示例。特别分享企业级开发经验:如何封装自定义业务异常(如余额不足校验)实现统一错误响应。最后总结四大避坑指南,包括禁止空catch块、精准捕获异常等,帮助开发者提升代码健壮性。全文贯穿实战场景,解决

2026-08-20 16:16:43 375

原创 C++ 命名空间详解:从命名冲突到模块化设计

本文探讨了如何利用C++命名空间解决多模块开发中的符号冲突问题。作者通过实际案例展示了当两个静态库在全局命名空间定义相同类名时,如何通过namespace隔离为utils::Config和network::Config消除链接错误。文章系统介绍了命名空间的基础用法(声明、嵌套、匿名/内联命名空间、别名)及其在模块化设计中的应用,强调命名空间应与目录结构配合实现接口/实现分离,并建议避免在头文件中使用using namespace以防止污染全局空间。最后通过完整示例说明良好的命名空间设计能有效管理符号、明确模

2026-08-19 10:53:17 398

原创 深入解析淘宝的技术架构:从分布式中间件到双 11 高可用实践

淘宝技术架构演进与双11高可用实践 淘宝技术架构历经单体架构、垂直拆分、服务化和云原生四个阶段,形成五层架构体系:基础设施层、中间件层、业务服务层、接入与网关层、端侧应用层。通过自研分布式数据库TDDL、多级缓存体系和消息中间件RocketMQ等核心组件,构建了亿级流量处理能力。双11期间采用全链路压测、流量削峰、降级限流和单元化架构等策略保障高可用,其架构演进由业务驱动,强调中间件自研、可观测性建设和容灾思维前置,为大型电商系统提供了重要参考。

2026-08-18 12:08:42 391

原创 我把 REST API 全量迁移到 GraphQL 后,前端请求次数从 47 次压到 3 次

GraphQL 不是银弹。它解决了"查询碎片化"和"前后端契约协作"的问题,但也引入了 schema 治理、复杂度控制、缓存改造这些新成本。如果你们的业务还处在接口少、页面简单的阶段,REST 完全够用。但如果前端开始抱怨"这个页面怎么要调十几个接口",或者后端开始为同一个数据写七八个不同版本的 DTO,那可能是时候考虑一次查询层改造了。我们这次迁移最大的收获不是技术选型本身,而是逼着我们把"数据消费"这件事重新梳理了一遍。

2026-08-17 09:09:18 256

原创 凌晨 NTP 时间同步漂移导致 JWT 批量失效:我用 chrony + 硬件时钟把故障窗口从 2 小时压到 30 秒

chrony 解决的是软件层同步,但源头还是虚拟化宿主机的时间。如果宿主机本身时钟源不稳定,guest OS 再努力也白搭。我们的做法是在关键宿主机上启用Intel PTP/KVM 时钟源,并在 AWS 实例里打开# 检查当前时钟源 cat /sys/devices/system/clocksource/clocksource0/current_clocksource # 如果是 kvm-clock/tsc,优先用 PTP;

2026-08-16 15:10:54 181

原创 Karpenter 替换 Cluster Autoscaler 后,AWS EKS 节点扩容从 3 分钟压到 15 秒

metadata:spec:template:spec:taints:limits:cpu: 2000---metadata:spec:- tags:- tags:ebs:iops: 3000:节点空了就立即删除,省得最干净。如果你 running 的 Pod 很稳定,也可以改成,让 Karpenter 主动把 Pod 挤到更少的节点上。:节点跑满 30 天强制替换,保证 AMI 和内核补丁及时生效。:强制 IMDSv2,安全合规。

2026-08-16 09:07:43 244

原创 我把 Cassandra 替换成 ScyllaDB 后,写入吞吐从 8 万行/秒涨到 52 万行/秒

Cassandra 是一款优秀的产品,但在纯写入、高并发、低延迟的场景下,JVM 和线程模型确实会成为瓶颈。ScyllaDB 不是银弹,如果你的查询重度依赖二级索引、LWT 或者复杂的 UDF,迁移成本会高很多。但对于我们这种"高吞吐写入 + 简单点查"的消息中台场景,它几乎是量身定制。如果你也在评估这条路,我建议先做三件事:跑真实流量压测、用双写做影子对比、把一致性级别和 compaction 策略核对清楚。比急着切换更重要的是,搞清楚你的瓶颈到底是不是在 JVM 上。迁移不是目的,解决问题才是。

2026-08-15 15:08:41 466

原创 我把 Cassandra 替换成 ScyllaDB 后,写入吞吐从 8 万行/秒涨到 52 万行/秒

ScyllaDB 不是 Cassandra 的"免费加速器"。如果你的场景是写多读少、数据模型简单、能容忍 C++ 生态相对 Cassandra 弱一些的工具链,它确实能省下一半以上的机器和运维心力。但如果依赖大量二级索引、Spark 集成、或者复杂 UDF,迁移前一定要做完整兼容性测试。我这套集群已经稳定跑了三个月,再也没出现过 GC 暂停导致的写入毛刺。下一步我打算把冷数据通过 ScyllaDB 的SSTable直写 S3,做分层存储——如果后续落地了,再来写一篇。

2026-08-15 09:14:55 375

原创 我把网关层 OAuth2 改用 PAR + JAR 后,授权码盗刷攻击从每周 30 起降到 0

方案 A:把/authorize改成只接受 client_id + state,其余参数走后端接口。这等于自己造一套 PAR 协议,而且没有标准兼容,老客户端迁移成本高。方案 B:直接换成 OIDC 的 backchannel 流程(比如 Client Credentials Grant)。但这会丢掉用户交互授权的能力,对我们的 toC 业务不适用。方案 C:上 FAPI(Financial-grade API)规范。

2026-08-11 09:08:16 203

原创 cert-manager 自动化 K8s 证书后,HTTPS 过期事故从月均 3 次降到 0:Let‘s Encrypt 落地实录

生产环境的证书管理,不能依赖任何人的记忆力。cert-manager + Let’s Encrypt 不是唯一的方案,但它是我们在 K8s 场景下验证过最轻量、最可靠的路径。如果你现在还在手动 renew 证书,我建议你本周就抽半天把它接进来。证书这玩意儿,平时没人记得它,炸一次 everyone remembers it。自动化掉,是最划算的 ROI。

2026-08-10 15:10:54 215

原创 凌晨 LLM Agent 调用循环把 API 账单打爆:我用重试退避 + 工具调用限流把 token 成本压回基线

这次事故让我对 LLM Agent 有了一个更清醒的认识:它不是万能的自动化助手,而是一个需要被“看管”的调用方。你不给它边界,它会用尽所有边界去完成任务。你给它无限的重试、无限的工具、无限的 token,它就用无限的方式给你造账单。现在的 Agent 链路里,我已经把这三层治理当成基础设施:重试退避、工具限流、token 预算。不是不信任 Agent,是不信任没有护栏的 Agent。如果你也在做内部 LLM Agent,我建议先把这三层加上。不是为了性能,是为了你的钱包能在凌晨两点继续睡觉。

2026-08-10 09:09:42 423

原创 Ansible + Pulumi 混合 IaC:我把 200 台机器的配置变更从 4 小时压到 15 分钟

混合 IaC 不是把两个工具硬拼在一起,而是把 “资源层” 和 “状态层” 的边界划清楚。Pulumi 告诉我机器应该长什么样,Ansible 保证机器里面真的长那样。如果你的环境也处在 “云资源一套、主机配置另一套” 的割裂状态,不妨试试这种分层。200 台机器的配置变更,从 4 小时到 15 分钟,不是靠堆人,而是靠把每一步都变成可重复、可验证、可回滚的代码。说实话,改完这套流程之后,我再也不用凌晨在群里喊人了。

2026-08-09 15:21:49 264

原创 我把线上搜索从 Elasticsearch 切到 Meilisearch 后,商品搜索 P99 从 380ms 压到 22ms

迁移完成后,我把商品搜索的 5 台 ES 节点缩成了 2 台 Meilisearch,另外 3 台 ES 继续留给订单检索和日志场景。这件事让我重新理解了「选型」两个字。不是越重越好,而是越匹配越好。ES 不是不好,只是我们的商品搜索不需要它那么重的能力。如果你也在维护一个数据量在百万级、查询以简单文本检索为主的搜索场景,真的可以花半天试试 Meilisearch。说不定你会发现,困扰你很久的延迟问题,根源只是工具选重了。后面我打算把同义词和热销排序策略再优化一轮,到时候再写一篇更新。

2026-08-09 09:06:40 207

原创 我把 TiDB 从 MySQL 兼容层切到 HTAP 引擎后,复杂报表查询从 23 秒压到 1.2 秒

TiDB 的 HTAP 不是魔法。它只是在同一个集群里塞进了两套存储引擎:TiKV 继续扛 OLTP,TiFlash 扛 OLAP。真正的收益来自"把合适的查询路由到合适的引擎"。如果你的 TiDB 集群里也有人抱怨"报表怎么这么慢",别急着加机器,先拉一条 EXPLAIN 看看。也许问题不是 SQL 写得烂,而是它跑错了引擎。下一步我准备把几张日志宽表也迁到 TiFlash,把审计类查询再统一收拢。到时候再写一篇踩坑实录。

2026-08-08 15:08:48 186

原创 K8s 镜像拉取慢到 Pod 启动 90 秒:我把 containerd 镜像仓库改成本地 Harbor 后,部署耗时回到 8 秒

Harbor 做 pull-through cache 不是新技术,但确实很实用。它没有 P2P 分发那么酷,也没有换云厂商仓库那么简单,但它解决的是一个特别具体的问题:让 K8s 节点的镜像拉取走最短路径。对于大多数中小型团队来说,这就够了。这次改造让我印象最深的不是启动时间从 90 秒降到 8 秒,而是业务同学不再因为“发布卡了”来找我。运维工作的价值,很多时候就体现在这种“没问题发生”的日常里。如果你的 K8s 集群也有镜像拉取慢、发布超时、高峰期扩容卡顿的问题,可以优先考虑这套方案。

2026-08-08 09:08:07 417

原创 我给 OpenTelemetry Collector 加了一层 WasmProcessor,把采样决策跑在沙箱里:30 秒接入自定义算子

WasmProcessor 不是让 OpenTelemetry 变得更复杂,而是把"会变的东西"和"稳定的管道"分开。Collector 负责稳定、高性能地收转发数据,wasm 模块负责快速迭代业务规则。如果你的采样规则也有"业务规则多、更新频繁、需要动态查询外部数据"的特点,不妨试试这套方案。30 秒接入一个自定义算子,听起来夸张,但把 wasm 编译和 ConfigMap 更新流水线做好后,确实差不多。

2026-08-04 09:07:21 242

原创 我把 KEDA 接进现有 HPA 后,事件驱动扩容把冷启动从 4 分钟压到 8 秒

这次改造最大的感受是:扩容的"信号源"选对了,比扩容算法本身更重要。HPA 看 CPU 没问题,但它看到的是结果。对于消息队列、定时任务、外部触发器这类场景,真正该看的是事件本身。KEDA 做的就是这件事,而且做得足够轻、足够 Kubernetes-native。如果你也有 Consumer 半夜 lag 爆炸、CPU 已经红了 Pod 还没起来的经历,不妨花半天时间装个 KEDA 试试。另外说一句,KEDA 的文档非常友好,大部分 scaler 直接复制改改就能跑。

2026-08-03 15:30:34 225

原创 我把 Fluentd 日志收集改成 Vector 后,采集 CPU 从 35% 降到 4%:一款用 Rust 写的日志代理实战

这次迁移最直观的收益不是某个数字,而是“日志采集终于不再是我们扩容时需要单独考虑的资源黑洞了”。以前每个节点要预留 0.5 核给日志 agent,现在只需要 0.1 核不到,省下来的 CPU 可以直接给业务用。如果你现在也在用 Fluentd 或者 Fluent Bit,建议先用 Vector 跑一个旁路对比,数据会告诉你答案。毕竟技术选型这件事,最终还是要回到成本、延迟和可维护性这三个老问题上。相关配置和迁移脚本我已经整理到 GitHub,感兴趣可以在评论区要链接,或者直接照这篇文章的示例改造。

2026-08-03 09:07:14 273

原创 我把向量检索从 Milvus 1.x 迁到 Milvus 2.x 后,亿级召回 P99 从 800ms 压到 65ms

Milvus 2.x 不是 1.x 的平滑升级,而是架构重做。迁移之前一定要做好分 collection 的灰度方案,千万别图省事直接全量切换。调优阶段最花时间的不是索引,而是 segment 大小、replica 数和一致性级别的组合。这三项调对了,收益非常明显。如果你现在也在 1.x 上被延迟和扩展性卡住,我的建议是先搭一个 2.x 测试集群,把最热的一个 collection 迁过去对比测试。数据不会骗人,看到延迟曲线掉下来的那一刻,你会觉得这个坑值得踩。

2026-08-02 15:04:19 246

原创 用 Caddy 替换 Nginx 做自动 HTTPS 证书管理,我把运维工单减少了 80%

我不是说 Caddy 在所有场景都比 Nginx 强。如果你需要做复杂的七层负载均衡、动态 upstream、Lua 脚本、或者你已经深度依赖 Nginx 生态,那 Nginx 依然是更好的选择。但在我这个场景里——反向代理 + 多域名 HTTPS + 自动证书维护——Caddy 把接缝成本降到了接近零。如果你也被证书续期、新域名配置、reload 失败这些问题折腾过,我建议先拿一个低优先级域名做灰度。迁移本身不难,难的是你愿意承认"原来的组合虽然能跑,但已经不适合现在的团队规模"。

2026-08-02 09:06:47 218

原创 我把 Istio sidecar 换成 Cilium Cluster Mesh 后,跨集群服务调用延迟从 12ms 压到 3ms

把 Istio sidecar 换成 Cilium Cluster Mesh,不是谁好谁坏的问题,而是场景适配的问题。如果你的服务网格主要用来做跨集群 mTLS、网络策略和基础流量转发,Cilium 的 eBPF 数据面确实更轻更快。但如果你重度依赖 Istio 的七层治理,比如复杂的路由规则、故障注入、多版本灰度,完全抛弃 Istio 还不现实。我们现在的状态是:网络层交给 Cilium,七层治理按需走 Istio waypoint。两条路各取所长,延迟和资源都下来了。

2026-08-01 15:05:32 242

原创 我把 Jenkins 夜间批处理迁到 Argo Workflows 后,K8s 资源利用率从 23% 提到 71%

Airflow:编排能力强,生态成熟。但对我们来说太重,需要单独维护 scheduler、webserver、metadata DB,而且任务最终还是要跑在 K8s Pod 上,多了一层抽象。Temporal:我之前做对账系统时用过,durable execution 很强,适合长状态、需要补偿的业务流程。但批处理场景我们更想要 “任务即容器”,不想常驻 worker 吃资源。:直接基于 K8s CRD,Workflow 就是一组 Pod 的 DAG。

2026-08-01 09:09:10 223

原创 我把 JuiceFS 替换 CephFS 做 K8s 共享存储后,Pod 启动从 47s 压到 3s

多机训练(PyTorch DDP + NCCL checkpoint 中转)数据集缓存(百 GB 级别的 ImageNet 类预读目录)Jupyter / VSCode Web 工作区(多用户同时挂载自己的 home)最早我们用的是自建的 Rook + CephFS,三个 mon + 三个 mgr + 六个 osd 节点。挂载延迟高:CSI driver 每次都要去 mon 拉一遍 caps,平均 40-50ms;走 ceph-fuse 的路径,元数据操作一多就直接卡。冷启动慢。

2026-07-30 09:19:46 287

基于SpringBoot的在线网盘系统|课程设计源码分享

本系统是一个基于 Spring Boot 构建的**在线网盘平台**,支持用户注册、文件上传、下载、分享、目录管理、历史记录等核心功能,整体设计结构清晰,逻辑完备,适合作为课程设计或毕业设计的实战项目。 **技术栈:** - 后端:Spring Boot + MyBatis + MySQL - 数据库:InnoDB(含完整建表SQL) - 前端:前后端分离,提供 API 接口(支持接入 Vue 或原生 HTML) - 其他支持:断点续传、文件分片上传、分享提取码、搜索历史等

2025-05-16

Android安卓在线订餐外卖APP+后端接口PHP

安卓原生订餐APP+后端服务接口+管理后台,后端使用PHP开发

2019-03-08

空空如也

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

TA关注的人

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