• 博客(97)
  • 资源 (7)
  • 收藏
  • 关注

原创 Docker Desktop 中文设置全攻略:Windows/Mac/Linux 一键汉化教程

摘要:Docker Desktop 默认仅提供英文界面,本文详细介绍如何通过替换资源文件实现中文汉化。首先需从开源项目下载对应系统的汉化包(Windows/macOS/Linux),确认系统版本后,找到安装目录下的resources文件夹,备份并替换app.asar文件。操作完成后重启Docker即可显示中文界面。常见问题包括版本不匹配需重新替换、更新后失效需重复操作等。汉化不影响容器数据,还原英文只需恢复备份文件。本教程帮助开发者降低使用门槛,提升操作效率。(149字)

2026-03-01 18:26:41 1758

原创 《零基础通关 Kubernetes》第19章:备份、恢复与灾难恢复(Velero)

本文摘要: 本章系统讲解Kubernetes备份恢复方案,重点介绍CNCF项目Velero的核心功能。内容包括:备份三大要素(资源定义、PV数据、集群状态)、Velero安装配置(以MinIO为例)、命名空间备份恢复全流程、跨集群迁移实践,以及生产级PV数据备份方案(AWS EBS快照)。通过模拟误删场景演示一键恢复,并解析5个高频面试问题。最后对比etcd备份差异,强调应用级备份的灵活性和非停机恢复优势。

2026-01-26 10:05:00 169

原创 《零基础通关 Kubernetes》第18章:性能调优与容量规划

摘要: 本章深入解析Kubernetes资源管理核心机制,涵盖资源模型(Requests/Limits)、QoS等级(Guaranteed/Burstable/BestEffort)及其对Pod调度与稳定性的影响。重点演示如何配置HPA实现基于CPU/内存/自定义指标的自动扩缩容,并通过亲和性、污点容忍等策略优化调度。实战部分指导为应用设置合理资源配额,结合监控数据与压力测试确定最佳值,避免OOM和CPU抢占。最后提供资源配额管理方案(ResourceQuota/LimitRange)及性能调优面试题模板,

2026-01-26 10:04:12 56

原创 《零基础通关 Kubernetes》第17章:安全加固(RBAC、NetworkPolicy、PodSecurity)

本章介绍了Kubernetes安全防护的关键措施,主要包括三大安全支柱:身份认证、授权和准入控制。重点讲解了RBAC(基于角色的访问控制)的最小权限原则实践、NetworkPolicy实现零信任网络的方法,以及Pod Security Admission(PSA)取代PSP的配置方式。此外还提供了安全上下文加固、安全扫描工具及常见面试题解析。通过本章学习,读者可以掌握K8s集群纵深防御体系的构建方法,确保应用部署的安全性。

2026-01-19 08:39:56 190

原创 《零基础通关 Kubernetes》第16章:多集群管理与联邦(Karmada / Cluster API)

多集群管理实践指南 本文系统讲解 Kubernetes 多集群架构的核心概念与实战方法: 1️⃣ 单集群局限:分析高可用、多云、合规等业务需求对多集群的驱动 2️⃣ 架构模式:对比独立管理/联邦/控制平面统一三种方案,重点介绍 CNCF 项目 Karmada 和 Cluster API 3️⃣ Karmada 实战:演示通过 PropagationPolicy 实现应用跨集群分发,利用 OverridePolicy 进行差异化配置 4️⃣ 集群即代码:讲解 Cluster API 如何声明式管理集群生命周期

2026-01-19 08:38:37 69

原创 macOS 上 C++ 开发完整指南(2026 年版)

本文为 macOS 用户提供 2026 年版 C++ 开发完整指南,涵盖从基础工具安装到专业开发环境的搭建。主要内容包括: 必备工具安装:通过 Xcode 命令行工具获取 Clang 编译器,推荐安装 Homebrew 包管理器 编辑器选择: VS Code(推荐):轻量级且功能强大,配置编译任务 CLion:专业付费 IDE Xcode:Apple 官方 IDE 项目构建:使用 CMake 管理多文件项目,包含示例项目结构和配置说明 调试配置:在 VS Code 中使用 LLDB 调试器 单元测试:通过

2026-01-15 09:33:16 1725 1

原创 《 C++ 零基础入门教程》第10章:C++20 核心特性 —— 编写更现代、更优雅的 C++

本文介绍了C++20的四大核心特性:Concepts(概念)、Ranges(范围)、协程(Coroutines)和模块(Modules)。Concepts为模板添加类型约束,使错误信息更清晰;Ranges通过管道风格简化STL算法,提升可读性;协程支持异步编程和生成器;模块取代头文件,显著提升编译速度。最后通过成绩分析系统案例,展示了如何整合这些特性编写现代C++代码。这些特性让C++代码更简洁、高效且易于维护。

2026-01-15 09:13:57 777

原创 《 C++ 零基础入门教程》第9章:移动语义与完美转发 —— 解锁 C++ 的极致性能

本文摘要(150字): C++移动语义与完美转发是提升性能的关键技术。左值(持久对象)与右值(临时对象)的区分是基础,右值引用(T&&)实现资源高效转移。移动构造函数/赋值运算符通过"窃取"资源避免深拷贝,需标记noexcept。std::move本质是类型转换而非移动操作。完美转发通过通用引用(T&&)和std::forward保持参数值类别,实现参数无损传递。实战演示了支持移动语义的MyVector实现,包括资源重新分配时的元素移动优化。这些技术能显著

2026-01-15 09:11:05 573

原创 《 C++ 零基础入门教程》第8章:多线程与并发编程 —— 让程序“同时做多件事”

本文摘要: C++多线程编程指南,涵盖线程基础、数据竞争解决方案和异步任务处理。主要内容包括: 使用std::thread创建线程,通过join()/detach()管理线程生命周期 使用std::mutex和lock_guard解决数据竞争问题 通过std::async和std::future简化异步任务处理 两个实战项目: 并行计算素数数量(优化锁竞争) 线程安全日志系统(单例模式+互斥锁) 介绍了死锁风险及避免策略 演示了异常在多线程间的传递机制 通过150字内的技术要点总结,帮助开发者掌握C++并发

2026-01-14 09:01:39 658

原创 《 C++ 零基础入门教程》第7章:异常、构建与测试 —— 工程化 C++ 开发入门

这篇文章摘要: C++零基础教程第7篇讲解了工程化C++开发的三个核心内容:异常处理、项目构建和单元测试。首先介绍了异常处理的必要性,通过try/catch/throw机制实现错误处理,并推荐使用标准异常类型。其次详细讲解了CMake构建工具的使用,展示如何将项目拆分为多文件结构并配置CMakeLists.txt。最后引入Google Test框架,演示了如何为Student类编写单元测试用例,并集成到CMake项目中。全文强调现代C++开发原则,包括异常安全、RAII资源管理和自动化测试,帮助开发者编写健

2026-01-14 08:57:42 574

原创 《 C++ 零基础入门教程》第6章:模板与 STL 算法 —— 写一次,用万次

本文介绍了C++模板编程和STL算法的核心知识,主要包括: 函数模板与类模板:通过泛型编程实现代码复用,支持多种数据类型 STL常用算法:sort、find等配合lambda表达式实现高效数据操作 实战应用: 通用计算器:使用类模板支持多种数值类型运算 学生成绩系统:利用STL算法实现排序、统计等功能 通过模板和STL的组合使用,可以编写出类型安全、高效且易于维护的C++代码。建议学习时重点关注模板声明语法和lambda表达式的灵活应用。

2026-01-13 15:57:18 343

原创 《 C++ 零基础入门教程》第5章:智能指针与 RAII —— 让内存管理自动化

本文介绍了C++中智能指针的核心概念与应用。主要内容包括: RAII机制:通过对象生命周期自动管理资源,避免内存泄漏 智能指针类型: unique_ptr:独占所有权,不可复制但可转移 shared_ptr:共享所有权,使用引用计数管理 最佳实践: 使用make_unique/make_shared创建智能指针 优先用unique_ptr管理资源 实战应用:改造通讯录项目,使用unique_ptr管理联系人备注 移动语义:通过移动而非拷贝提高性能 核心原则:用智能指针替代new/delete,实现自动内存管

2026-01-13 10:20:32 463

原创 《 C++ 零基础入门教程》第4章:现代 C++ 的核心武器库 —— STL(Standard Template Library)

本文摘要: 本教程介绍C++ STL核心组件,包括动态数组std::vector(支持自动扩容和内存管理)、功能强大的std::string(替代C风格字符串)以及键值对容器std::map。通过实战演示如何使用这些工具重构成绩系统(支持无限学生数量)和控制台通讯录程序(实现增删查功能)。重点讲解了vector的push_back、size等操作,string的拼接查找方法,以及map的键值存储特性,帮助开发者从C风格转向现代C++编程。建议学习时间3-5小时。

2026-01-12 10:14:12 1570

原创 《零基础通关 Kubernetes》第15章:CI/CD 与 GitOps(Argo CD)

GitOps 与 Argo CD 实践指南 本文介绍如何通过 GitOps 解决传统 CI/CD 的痛点(手动部署、环境不一致等),并详细演示 Argo CD 的部署与应用。核心内容包括: GitOps 原则:以 Git 为唯一事实源,实现声明式、版本化、自动化的集群管理 Argo CD 部署:安装步骤、访问方式及初始密码获取 实践流程:从 Git 仓库准备、创建 Application 到与 CI 集成实现自动同步 安全与 RBAC:私有仓库认证、多环境管理及权限控制 通过代码提交触发自动同步,实现高效可

2026-01-12 10:08:07 88

原创 零基础通关 Kubernetes》第14章:监控与日志(Prometheus + Grafana + Loki

文章摘要 本章深入探讨Kubernetes可观测性,重点讲解指标(Prometheus + Grafana)和日志(Loki + Promtail)两大核心支柱。通过Helm一键部署监控栈,实现集群与应用性能的可视化。实践部分包括: 在Go应用中暴露自定义指标 配置ServiceMonitor实现指标自动采集 轻量级日志聚合方案(Loki + Promtail) 告警规则配置(如Pod频繁重启告警) 关键工具链: 指标监控:Prometheus + Grafana 日志收集:Loki + Promtail

2026-01-11 23:05:54 82 1

原创 《 C++ 零基础入门教程》第3章:结构体与类 —— 用面向对象组织代码

本文介绍了C++中结构体(struct)和类(class)的使用方法,重点讲解了面向对象编程中的封装、构造函数和成员函数等核心概念。文章通过学生成绩管理系统的重构案例,展示了如何用struct组织数据,再用class实现封装和数据保护。主要内容包括:结构体定义与使用、成员函数添加、构造函数初始化对象、访问权限控制(public/private)以及最终用OOP思想重构学生成绩系统。通过学习,读者可以掌握C++面向对象编程的基本方法,理解struct和class的关键区别,并能运用这些知识改进程序结构。

2026-01-11 23:05:13 925

原创 《零基础通关 Kubernetes》第13章:Cert-Manager 与自动 HTTPS

📌 文章摘要 本章讲解如何在 Kubernetes 中通过 cert-manager 实现 TLS 证书自动化管理,解决手动更新 HTTPS 证书的痛点。内容涵盖: 问题背景:手动管理证书存在续期、多域名维护等挑战 解决方案:使用 cert-manager 自动申请、安装和续订证书 核心组件: Issuer(证书颁发者,如 Let's Encrypt) Certificate(证书申请声明) Secret(存储生成的 TLS 证书) 实操步骤: 安装 cert-manager(需 Helm + CRD)

2026-01-10 17:25:04 85

原创 《 C++ 零基础入门教程》第2章:数组、指针、引用 —— 走进内存的世界

本文介绍了C++中的内存地址、指针与引用的基本概念和使用方法,以及数组操作技巧。主要内容包括: 内存地址:类比为带编号的储物柜,变量存储在特定地址上 指针与引用:指针存储变量地址,引用是变量别名(更安全) 数组操作:包括普通数组和C风格字符串,注意数组名即首元素指针 实战项目:实现简易学生成绩管理系统,展示数组与函数的配合使用 关键要点: 指针使用&取地址,*解引用 引用必须初始化且不可更改指向 数组作为函数参数时实际传递指针 推荐使用引用而非指针进行参数传递 建议学习时间3-5小时,适合C++初学

2026-01-10 17:23:08 1195

原创 《 C++ 零基础入门教程》第1章:从安装到写出第一个程序

这篇C++零基础入门教程详细介绍了如何搭建开发环境并编写第一个C++程序。主要内容包括:1) Windows/Mac/Linux环境下编译器的安装配置;2) 使用VS Code编写"Hello World"程序;3) 基础语法讲解(变量、输入输出、条件循环、函数等);4) 综合练习项目-猜数字游戏的完整实现。教程通过对比Java语法,帮助初学者快速理解C++特性,适合零基础学习者入门。最后还提供了修改游戏的进阶练习建议。

2026-01-09 16:13:57 548

原创 《零基础通关 Kubernetes》第12章:Ingress 与外部流量管理

摘要: 本章介绍了Kubernetes Ingress的核心概念与实践,包括: 为什么需要Ingress:解决NodePort/LoadBalancer在域名支持、多服务管理方面的不足 核心组件:Ingress资源定义路由规则,Ingress Controller(如Nginx)实际处理流量 部署实践:在Minikube中部署Nginx Ingress Controller,配置域名路由和TLS加密 高级功能:金丝雀发布实现流量分流,常用Annotations定制路由行为 面试要点:强调Ingress的七层

2026-01-09 15:08:56 47

原创 《零基础通关 Kubernetes》第11章:Helm —— K8s 应用包管理器

Helm 入门与实践指南 本文介绍了 Kubernetes 包管理工具 Helm 的核心概念与使用方法。主要内容包括: Helm 的必要性:解决多环境 YAML 管理、版本混乱和复杂依赖等问题 核心概念:Chart(模板)、Release(实例)、Repository(仓库) 实操演示: 安装 Nginx Ingress Controller 应用升级与回滚操作 自定义 Chart 开发:创建模板、修改配置、部署应用 依赖管理:通过 Chart.yaml 声明依赖关系 面试常见问题:Helm v2/v3 区

2026-01-09 15:07:50 75

原创 《零基础通关 Kubernetes》第10章:StatefulSet —— 有状态应用的终极方案

本文摘要(150字): StatefulSet是Kubernetes中部署有状态应用的核心控制器,与Deployment相比具有三大特性:1)稳定Pod名称(如redis-0/1/2);2)稳定网络标识(通过Headless Service提供固定DNS);3)有序部署扩缩容(按顺序启停Pod)。文章通过Redis部署示例,展示了如何通过volumeClaimTemplates实现持久化存储,利用Init Container配置主从关系,并详细讲解了StatefulSet的扩缩容策略和更新机制。最后对比了S

2026-01-08 22:21:08 743

原创 《零基础通关 Kubernetes》第9章:Job 与 CronJob —— 运行一次性与定时任务

本文摘要: Kubernetes中Job和CronJob专为批处理任务设计,与长期运行的Deployment有本质区别。Job确保一次性任务可靠完成,支持失败重试和并行执行;CronJob则实现定时任务调度。关键配置包括:restartPolicy必须为Never/OnFailure、backoffLimit控制重试次数、parallelism设置并发度。通过MySQL定时备份案例演示了CronJob的cron表达式、PVC存储和日志查看方法。与Deployment对比,Job适用于"做完即走&q

2026-01-08 22:18:08 63

原创 《零基础通关 Kubernetes》第8章:自动扩缩容(HPA)与资源管理

本文摘要(150字): Kubernetes HPA(Horizontal Pod Autoscaler)实现Pod自动扩缩容,解决手动调整副本数的痛点。首先需配置Pod的requests和limits定义资源需求。HPA基于CPU/内存等指标自动调整副本数,需安装Metrics Server获取指标数据。通过压测可验证自动扩容效果,还支持基于QPS等自定义指标的智能扩缩。高级功能包括调优扩缩行为防止抖动,并设置冷却时间。关键点:必须设置requests才能计算资源利用率;HPA适用于Deployment/

2026-01-07 22:18:18 298

原创 零基础通关 Kubernetes》第7章:健康检查与探针 —— 让 K8s 真正懂你的应用

摘要:本章深入探讨Kubernetes健康检查机制,指出"进程运行"不等于"服务可用"的常见误区。详细解析Liveness(存活)、Readiness(就绪)和Startup(启动)三种探针的核心区别与应用场景:Liveness用于故障自愈,Readiness控制流量准入,Startup保护慢启动应用。通过配置HTTP/TCP/Exec三种探测方式,结合Go Web服务的实践案例,展示如何避免流量打到未就绪Pod。特别强调Liveness不应检查外部依赖,防止级联故障

2026-01-07 22:16:55 144

原创 《零基础通关 Kubernetes》第6章:持久化存储 —— PV 与 PVC

K8s持久化存储核心机制 K8s通过PV/PVC抽象层实现存储资源管理: PV是集群存储资源(如云盘/NFS),PVC是用户存储申请 动态Provisioning自动创建PV(推荐生产使用) StatefulSet通过volumeClaimTemplates为每个Pod绑定独立PVC 回收策略(Retain/Delete)决定PVC删除后PV的处理方式 关键实践: MySQL等有状态应用必须使用PVC持久化数据 云环境通过StorageClass自动创建云盘 生产环境建议设置Retain策略防误删 面试要点

2026-01-06 09:32:15 119

原创 《零基础通关 Kubernetes》第5章:ConfigMap 与 Secret —— 安全、灵活地管理配置

本文介绍了Kubernetes中配置管理的最佳实践,重点讲解了ConfigMap和Secret的使用方法。ConfigMap适用于存储非敏感配置(如端口、日志级别),而Secret则用于安全存储敏感信息(如密码、API Key)。文章详细演示了两种注入方式:通过环境变量或挂载为文件,并比较了它们的适用场景。此外,还介绍了配置热更新机制和安全实践建议,包括etcd加密和RBAC控制。最后提供了5道高频面试题及回答模板,帮助读者掌握Kubernetes配置管理的核心要点。

2026-01-06 09:30:19 174

原创 《零基础通关 Kubernetes》第4章:Service 与 Ingress —— 让你的应用真正可被访问

Kubernetes服务发现与网络摘要 本章讲解了Kubernetes网络核心概念,重点解决Pod IP不稳定的问题。通过Service提供稳定访问入口,包括: ClusterIP:集群内部服务发现 NodePort:通过节点端口暴露服务 LoadBalancer:云厂商负载均衡 更进一步,引入Ingress实现HTTP/HTTPS路由: 部署Nginx Ingress Controller 配置域名路由规则 通过cert-manager自动管理TLS证书 关键优势: Service提供稳定的虚拟IP和负载

2026-01-05 14:36:17 190

原创 《零基础通关 Kubernetes》第3章:Deployment 与 StatefulSet —— 管理无状态 vs 有状态应用

本文摘要(149字): 本章深入讲解Kubernetes工作负载控制器。Deployment适用于无状态应用,支持滚动更新、回滚和扩缩容操作,通过ReplicaSet确保副本数。StatefulSet专为有状态服务设计,提供稳定网络标识(如mysql-0)、有序启停和持久化存储。通过YAML示例演示了如何部署Go Web服务和MySQL数据库,并详解控制器核心机制。关键点包括:Pod模板定义、标签选择器作用、滚动更新策略(maxUnavailable/maxSurge),以及StatefulSet的三大特性

2026-01-05 14:33:49 275

原创 插入篇:零基础彻底搞懂 Dockerfile

Dockerfile 极简指南:从入门到生产 本文为 Go 开发者提供 Dockerfile 从零到生产的完整指南: ✅ 5行基础示例 + 逐行解析 ✅ 多阶段构建(镜像从300MB→12MB) ✅ 安全加固(非root用户+distroless基础镜像) ✅ 生产级优化(健康检查/.dockerignore/静态编译) ✅ 完整模板 + 自查清单 核心原则: 最小化运行时镜像 非root运行保障安全 明确区分构建/运行阶段 附赠:Go应用专用模板及常见陷阱解答,助你快速构建生产级容器镜像。

2026-01-04 10:23:40 33

原创 《零基础通关 Kubernetes》第2章:Pod 深度解析 —— 健康检查、资源限制与生命周期管理

摘要: 本章深入讲解Kubernetes Pod的生命周期管理,重点包括: Pod本质:作为共享网络/存储的容器组,是K8s最小调度单元 健康检查:通过Liveness/Readiness探针实现应用自愈,实战演示Go服务的探针配置与状态切换 资源限制:设置CPU/Memory的requests/limits避免资源争抢,附生产环境最佳实践 初始化容器:演示用Init Container执行预启动任务(如数据库迁移) 面试重点:涵盖Pod设计思想、探针机制、资源配额等核心考点 通过代码示例和Minikube

2026-01-04 09:57:54 244

原创 零基础通关 Kubernetes —— 从部署第一个 Pod 到大厂面试题

摘要: 本文是Kubernetes入门系列的第1章,采用“理论+实践”模式,帮助开发者快速理解K8s核心价值。通过餐馆比喻形象说明从裸机部署到容器编排的演进,并指导读者使用Minikube在本地部署首个Nginx Pod(支持命令行和YAML两种方式)。文中解析了K8s核心架构组件(API Server、etcd等),提供3个高频面试题的标准回答模板,强调声明式管理的优势。最后通过动手任务巩固知识,为后续学习Pod生命周期和控制器埋下伏笔。 关键词: Kubernetes入门、Minikube、Pod部署、

2026-01-04 09:55:09 359

原创 学习总结笔记十:Kubernetes 部署 + 服务网格 + 多租户 SaaS 架构(第10章实战版)

本文介绍了如何将ChitChat微服务部署到Kubernetes集群,并利用Istio实现流量管理、熔断和可观测性,最终演进为多租户SaaS留言平台。主要内容包括:1)准备K8s环境;2)创建Docker镜像;3)编写K8s清单文件(Namespace、MySQL、微服务部署等);4)集成Istio服务网格,实现自动注入Sidecar和流量管理。通过K8s+Istio组合,可解决手动管理容器、服务直连等问题,实现自动扩缩容、熔断和多租户隔离。

2026-01-03 13:18:51 168

原创 学习总结笔记九:微服务拆分 + 消息队列 + CI/CD 自动化(第9章实战版)

本文介绍了一个将单体应用ChitChat拆分为微服务架构的技术方案。通过将系统拆分为用户服务和留言服务两个独立微服务,使用gRPC实现服务间高效通信,并引入RabbitMQ处理异步任务(如发送邮件)。方案采用渐进式演进策略,保留原有API兼容性。文章详细展示了从定义gRPC接口、实现独立用户服务到改造API网关调用gRPC的全过程,同时演示了如何通过RabbitMQ实现异步消息处理。该架构解决了单体应用耦合度高、扩展性差的问题,提升了系统响应速度和可维护性。

2026-01-03 13:18:00 25

原创 学习总结笔记八:性能优化、缓存与可观测性 —— 让 ChitChat 快如闪电(第8章实战版)

本文介绍了如何优化Go语言Web应用的性能和可观测性。首先使用pprof工具分析CPU和内存瓶颈,定位数据库查询是主要性能瓶颈。接着引入Redis缓存热门数据,减少数据库压力,并通过Docker Compose集成Redis服务。然后采用Zap替换原生日志,实现结构化日志记录。最后通过Prometheus暴露应用指标,监控关键性能数据。这些优化措施使系统具备更快的响应速度、更好的稳定性和更清晰的问题定位能力。

2026-01-02 16:30:22 52

原创 学习总结笔记七:测试、部署与 Docker 化 —— 从开发到上线(第7章实战版)

本文介绍了如何为ChitChat应用实现自动化测试和Docker部署。主要内容包括: 编写自动化测试 使用Go内置的httptest包进行HTTP接口测试 测试注册、登录和发帖功能 通过测试数据库隔离测试环境 Docker化应用 采用多阶段构建减小镜像体积(约15MB) 使用docker-compose编排MySQL和应用容器 通过环境变量配置数据库连接 一键部署 实现快速可靠的自动化部署流程 确保环境一致性,避免"在我机器上能跑"问题 支持快速回滚和重复部署 这些实践能显著提升应用的质

2026-01-02 16:29:44 185

原创 学习总结笔记六:构建 RESTful API + 中间件体系(第6章实战版)

本文介绍了如何为ChitChat应用添加RESTful风格的JSON API,实现前后端分离架构。主要内容包括:1) 设计符合REST规范的API路由,区分网页和API路径;2) 创建统一的JSON响应格式处理模块;3) 实现核心API功能,包括获取留言列表、发布留言和用户注册等接口;4) 复用现有会话认证逻辑,保证API安全性。通过新增/api/前缀的路由,使网页版和API版功能共存,同时采用标准化的JSON响应格式和错误处理机制,提升代码的可维护性和专业性。

2026-01-01 17:12:04 55

原创 学习总结笔记五:真正的用户系统——注册、登录、密码加密与会话管理(第5章实战版)

本文介绍了如何为ChitChat Web应用构建完整的用户认证系统,取代简单的Cookie伪登录方案。主要内容包括: 创建users表存储用户信息,包含唯一用户名和加密密码字段 使用bcrypt实现密码加密和验证功能,确保密码安全存储 开发用户注册功能,包括表单验证、用户名查重和密码加密处理 改造登录系统,实现真正的密码验证机制 添加会话管理基础,通过Session ID跟踪用户登录状态 系统特点: 防止用户名冒充和随意修改 采用行业标准的密码加密技术 实现完整的注册/登录流程 通过会话机制管理用户认证状态

2026-01-01 17:11:21 55

原创 学习总结笔记四:告别内存数据——用 mysql持久化你的留言(第4章实战版)

本文介绍了如何将ChitChat应用的留言数据持久化存储到MySQL数据库,实现数据关机不丢失并可共享。主要内容包括: 选择MySQL的原因:成熟稳定、支持高并发和事务管理 两种MySQL启动方式:本地安装或Docker容器 Go语言连接MySQL的实现步骤: 安装go-sql-driver/mysql驱动 配置数据库连接池参数 创建messages表结构 改造原有功能: 发帖时数据写入MySQL 首页从MySQL读取最新10条留言 关键安全措施:使用参数化查询防止SQL注入 通过以上改造,ChitChat

2025-12-31 15:48:05 58 1

原创 学习总结笔记三:让网站“活”起来——处理静态文件、表单验证与用户登录(第3章实战版)

本文介绍了如何为ChitChat留言板添加CSS样式、实现表单校验和简单登录功能。主要内容包括:1) 通过创建static目录和配置http.FileServer支持静态CSS文件;2) 使用Go语言对表单内容进行空值和长度校验;3) 利用Cookie机制实现用户登录状态保持,包括登录表单、Cookie设置和验证流程。文章还强调了后端校验的必要性和Cookie安全性注意事项,最后提供了进一步改进的建议,如显示用户名、退出功能和Cookie加密。这些改进使留言板从基础功能升级为更美观、安全和用户友好的Web应

2025-12-31 15:38:53 68

人事管理系统带数据库版本

用来管理用户的登录注册,管理员可以添加用户,修改用户信息,可以查询全部用户,也可以根据ID或者姓名查询 连接数据库 数据保存在mySQL数据库中

2018-11-11

超市购物系统

jsp+mysql开发应用,myeclipse应用平台开发,简单的期末大作业!

2018-07-04

人事管理系统

用来管理用户的登录注册,管理员可以添加用户,修改用户信息,可以查询全部用户,也可以根据ID或者姓名查询 连接数据库 数据保存在mySQL数据库中

2018-09-04

linux环境搭建svn服务器所需安装包

linux环境搭建svn服务器所需安装包,包括apr-1.7.0.tar.gz, apr-util-1.6.1.tar.gz, expat-2.1.0.tar.gz, openssl-1.0.2l.tar.gz, sqlite-autoconf-3330000.tar.gz, subversion-1.9.4.tar.gz, zlib-1.2.11.tar.gz

2020-09-19

离线安装nginx.zip

nginx安装包和依赖文件

2021-04-14

nginx依赖包.zip

nginx安装所需依赖包下载

2021-04-13

selectbox.rar

多选下拉框,实现下拉框的多选,分类等功能!! 多选下拉框,实现下拉框的多选,分类等功能!!

2019-08-15

空空如也

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

TA关注的人

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