- 博客(61)
- 收藏
- 关注
原创 Nginx重定向
重定向(Redirect)指通过各种方法将各种网络请求重新定个方向转到其它位置(如:网页重定向、域名的重定向、路由选择的变化也是对数据报文经由路径的一种重定向)。URL重写是指通过配置conf文件,以让网站的URL中达到某种状态时则定向/跳转到某个规则,比如常见的伪静态、301重定向、浏览器定向等。当客户端浏览某个网址时,将其访问导向到另一个网址的技术。将一串很长的网址,转成较短的网址,从而实现便于传播、易于记忆。调整或更换Web服务器。
2025-08-18 22:10:19
772
原创 Go语言企业级权限管理系统设计与实现
为什么需要RBAC来管理项目的呢想象你是一所大学图书馆的IT负责人。新学期开始了,小王:只想借书还书,查看自己的借阅记录张三:除了借书,还需要帮学生查询图书,管理班级借阅情况李四:需要添加新书、管理用户账号、查看所有借阅统计王五:拥有系统的完全控制权,包括备份数据、修改系统配置假设,可能会什么事情呢?小王误点了"删除所有图书"按钮张三想查看其他班级的借阅情况被拒绝了李四无法访问系统设置,找你求助所以权限管理,是非常必要的!!现在问题来了:在咱们项目中,如何为他们添加权限?传统的解决方式是什么?
2025-08-17 22:02:24
964
原创 【数据库】使用Sql Server创建索引优化查询速度,一般2万多数据后,通过非索引时间字段排序查询出现超时情况
由于博主用的云服务器配置比较低,2M带宽,所以整体访问速度会比较慢,单达到一定内存和并发上限后会出现查询超时的情况。此时就在硬件不变动情况下,就需要从软件层面优化,sql表索引就是常见的查询优化方向之一,如果你用的是SSMS可视化工具操作sql server数据库,那么通过可视化方式去创建索引可能会失败,可以换成通过sql方式创建!
2025-08-13 10:57:27
438
原创 【Rust多进程】征服CPU的艺术:Rust多进程实战指南
Rust 提供了以下几个核心类型用于进程管理:std::process::Command:用于配置和启动新进程std::process::Child:表示运行中的子进程std::process::ExitStatus:子进程的退出状态std::process::Output:表示完整子进程输出std::process::Stdio:用于标准输入输出重定向这些类型构成了 Rust 进程操作的主干。Rust 提供的 std::process 是一个强大、安全且跨平台的进程管理工具。
2025-08-11 22:45:23
465
原创 MySQL从入门到精通超详细版本,看这一篇就够了!
SQL(Structured Query Language)是结构化查询语言的简称,是一种数据库查询和程序设计语言,用于读取数据,以及查询、更新和管理关系数据库数据库表的每一列都是不可分割的原子数据项,而不能是集合,数组等在关系型数据库的设计中,满足第一范式是对关系模式的基本要求,不满足第一范式的数据库就不能被称为关系数据库在满足第一范式的基础上,不存在非关键字段对任意候选键的部分函数依赖存在于表中定义了复合主键的情况下。
2025-08-09 09:18:01
692
原创 使用nvm安装和管理node.js
Node.js 的更新迭代非常迅速,不同项目间常常需要搭配不同版本的 Node。为了避免频繁手动卸载、重装所带来的麻烦,你可以使用一个专门的版本管理工具——??轻松安装不同版本的 Node.js??一句话就切换版本,无需 root 权限避免旧版本残留和路径冲突安装最新的 LTS 或者项目所需的精确版本都能轻松实现。本文基于windows实现nvm安装和nodejs的切换。安装nvm;用nvm安装和切换不同版本的node.js;nvm和node的环境变量不需要再配置;
2025-08-07 20:45:25
899
原创 spring webflux链路跟踪【traceId日志自动打印】
关于Spring Webflux链路跟踪的问题,在几年前我这篇博客讨论过,在那个时候并没有什么好的方式,所以里面提到的方式并不优雅。几年过去了,社区关于这个问题也做了很多努力让它更好用,并且提供了新的实现方式,这篇博客就介绍一下新的方式。建议看到最后,最优雅最简单的方式在最后描述。对比几年前,现在实现Spring WebFlux的方式更加简便更加优雅,但是有一点需要注意。因为它多了很多从Context同步信息到ThreadLocal的操作,在引入这种方式时一定要做好压测,确保性能没有问题。参考。
2025-08-05 23:31:25
718
原创 尚硅谷2025最新SpringCloud速通-操作步骤(详细)
springcloud是分布式系统一站式解决方案。什么是分布式系统?架构分:单体和分布式。集群只是一种物理形态,分布式是工作方式。架构演进单体架构集群架构分布式架构定义所有功能模块都在一个项目里单体的多服务器版本一个大型应用被拆分成很多小应用分布部署在各个机器;优点开发部署简单解决大并发解决了单体+集群的问题缺点无法应对高并发问题1:模块块升级 麻烦问题2:多语言团队 交互不通基于自己的理解:分布式架构(模拟用户访问)通过网关来发送各个微服务的请求(请求路由)。
2025-08-04 20:17:21
1525
原创 全面解析MySQL(1)——数据库基础
数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,可以高效地存储、检索和管理大量数据1.结构化存储:数据按特定模型组织2. 集中管理:统一存储和管理相关数据3. 共享访问:支持多用户同时使用4. 减少冗余:避免数据重复存储5. 数据独立性:数据与应用程序分离SQL(Structured Query Language,结构化查询语言)是一种用于管理关系型数据库的标准编程语言。它允许用户执行数据查询、更新、插入、删除等操作,广泛应用于数据库管理系统中。
2025-07-30 23:06:49
643
原创 Nginx 文件上传大小限制及 `client_max_body_size` 最大值详解
通过上述配置与示例,您可以灵活地调整或取消 Nginx 的上传大小限制,满足从小型表单到超大文件传输的各种业务需求。会覆盖祖先块中的同名指令citeturn1search1。时,Nginx 不再在自身层面拦截任何大小的请求体。Nginx 在内部将该值存储为 C 语言类型。Nginx 默认允许的请求体最大为。或前端上传大文件,确认是否仍出现。(不区分大小写),如。
2025-07-29 21:20:15
620
原创 ubuntu22.04下安装mysql以及mysql-workbench
如果不加-y会在安装过程中,系统将提示你设置MySQL的root密码。确保密码足够强,且记住它,因为你将在以后需要用到它。为了在开发过程中使用 MySQL,你还需要安装 MySQL 开发库。mysql-community-XXXX.deb:替换成你下载的安装包;修改bind-address,保存后重启MySQL即可。默认安装是没有设置密码的,需要我们自己设置密码。1、先做安装前的配置工作:进入网站。检查是否在运行mysql服务。至此安装mysql服务完成!1、下载MySQL安装包。.deb文件安装方法。
2025-07-28 21:09:53
725
原创 【Mysql】数据库备份与恢复
4、使用第三方备份工具 Percona XtraBackup(简称PXB) (完全备份、增量备份、物理热备)备份方法我将从物理冷备、mysqldump的逻辑热备、增量备份、断点备份这几个方面介绍使用方法以及语句。3、增量备份:只备份上一次完全备份或增量备份后的更新数据,即每次都只备份最新的数据。2、使用mysql自带的备份工具 mysqldump(完全备份、逻辑热备)1、完全备份:也叫全量备份,每次都备份完整的数据库。2、差异备份:只备份上一次完全备份后的更新数据。用于备份数据库的结构(即表的创建语句)
2025-07-22 19:02:34
476
原创 Nginx保姆级部署教程(2025最新版)
以上为Nginx从安装到高级配置的全流程教程,覆盖静态资源托管、反向代理、负载均衡及HTTPS加密等核心场景。或 CSDN相关专题。
2025-07-21 20:33:23
484
原创 看完!我不允许你还不知道 Spring Boot如何读取Resource目录文件
在Spring Boot开发中,我们经常需要读取目录下的文件,目录下通常存放配置文件、模板、静态资源、SQL脚本等,如何在运行时读取这些资源,是每个JAVA开发者必须掌握的技能。src/└── main/├── static/ # 静态资源├── templates/ # 模板文件├── config/ # 配置文件└── data/ # 数据文件本文博主将将从多种角度详细介绍在中读取类路径(classpath)下资源的方法,并给出完整的代码示例,相信小伙伴们看完一定能掌握这个技巧!
2025-07-19 21:45:21
898
原创 【SpringBoot】初学SpringMVC必备知识详解
SpringMVC是基于构建的原始Web框架,从一开始就包含在 Spring 框架中。它的正式名称为“”,通常简称为Spring MVC。SpringMVC 是一个 Web 框架SpringMVC 是基于 Servlet API 的为了更加理解SpringMVC,我们需要知道什么是MVC。
2025-07-18 20:34:18
635
原创 【MySQL】联合查询
联合查询是一种将多个select语句的结果合并成一个结果集。允许垂直合并来自不同查询的数据,前提是这些查询具有相同数量的列且对应列的数据类型兼容。
2025-07-15 20:52:18
1039
原创 MySQL 运维实战:常见问题排查与解决方案
MySQL 运维是一项复杂而重要的工作,需要运维人员具备扎实的专业知识和丰富的实战经验。通过深入排查和解决常见问题,不断优化数据库性能和安全性,可以确保 MySQL 数据库的稳定运行和高效服务。同时,遵循最佳实践,加强团队协作和知识分享,可以进一步提升 MySQL 运维的效率和水平。希望本文能够为读者在 MySQL 运维实战中提供有益的参考和借鉴。
2025-07-14 20:18:16
289
原创 【springcloud】快速搭建一套分布式服务springcloudalibaba(四)
第四篇 基于nacos搭建分布式项目 分布式系统日志(skywalking+es)项目所需 maven + nacos + java8 + idea + git + mysql + redis + skywalking + es本文主要从客户下单时扣减库存的操作,将链路日志模拟出来,网关系统/用户系统/商品系统/订单系统。
2025-07-12 21:52:01
485
原创 Nginx 报错403 排查与解决
今天领导让我部署一个前端项目,一顿操作报错访问报错403,让我们一起搞定他。Nginx 的主进程和工作进程可能使用不同的用户,这会影响文件访问权限在 Linux 中,用户权限管理非常严格,特别是对于/root目录不要盲目地将服务程序配置为使用 root 用户运行,这会带来安全风险希望我的经验能对你有所帮助!
2025-07-10 21:28:59
694
原创 SpringCloud——Gateway新一代网关
体系定位路由是构建网关的基本模块,它由 ID,目标 URI,一系列的断言和过滤器组成,如果断言为 true 则匹配该路由web前端请求,通过一些匹配条件,定位到真正的服务节点。并在这个转发过程的前后,进行一些精细化控制predicate就是我们的匹配条件filter,就可以理解为一个无所不能的拦截器。有了这两个元素,再加上目标uri,就可以实现一个具体的路由了。
2025-07-02 20:03:25
1027
原创 Nginx 安全防护策略与解决方法详解
Nginx 的安全防护需从 信息隐藏、访问控制、加密传输、流量限速、日志审计、漏洞修复 多维度入手。建议运维人员:定期更新 Nginx 和依赖组件;结合 WAF 和日志分析工具构建纵深防御体系;制定应急响应计划,快速应对突发攻击事件。通过以上策略,可显著提升 Nginx 服务的安全性,降低被攻击的风险。
2025-06-29 16:17:11
979
原创 基于SpringBoot和Leaflet的省级行政区及其简称可视化实践
在当今数字化与信息化飞速发展的时代,地理信息的可视化呈现已成为众多领域不可或缺的关键环节。从城市规划到资源分配,从公共服务布局到商业智能决策,直观、高效地展示地理区域相关数据,能为各类决策提供有力依据,帮助人们更好地理解复杂的空间关系和数据分布。省级行政区作为国家行政体系的重要构成单元,在众多宏观层面的分析与决策中占据核心地位。无论是进行区域经济发展战略的制定,还是评估公共服务在各省的覆盖情况,了解省级行政区的地理范围及其简称所代表的区域特性,都是基础且关键的一步。
2025-06-28 10:41:42
492
原创 【Spring AI系列】10 分钟用 Spring AI 搭专属 MCP Server,手把手教程来了
Streamable HTTP 适合复杂网络交互,而 stdio 和 sse 应用更为高频,他俩一个主打本地交互的便捷,一个专注实时数据推送,这也是本文要重点讲解的内容,下面就来深入了解它们的原理与适用场景。2. 将打包好的jar包挪出来,我把jar包放到了E盘根目录,填写MCP Server配置文件后保存,下图中我的天气查询MCP Server就配置好了。4. 在xfc-mcp-server模块中编写天气查询服务,由于我本期教程只是打个样,就做了一个虚拟的天气查询服务,目的只是带领大家把流程走通。
2025-06-27 18:39:33
959
原创 MySQL期末复习题
创建一个存储过程,接收部门 ID 作为参数,返回该部门的员工总数。以下哪个数据类型适合存储日期和时间(精确到秒)?表中年龄大于 20 岁的学生,SQL 语句应为( )以下哪个数据类型适合存储短文本(长度固定)?事务的四个特性(ACID)不包括以下哪一项?)在 50 到 100 之间的产品,语句为( ))以 ‘Smith’ 开头的客户,语句为( )约束(年龄范围 18-60),语句为( )B. 一致性(Consistency))在 2024 年的记录,语句为( )D. 持久性(Durability)
2025-06-26 20:22:16
614
原创 【SpringBoot】零基础全面解析SpringBoot配置文件
详细见链接:Hutool1. 原理验证码可以客户端生成, 也可以服务器生成. 对于普通的字符验证码, 后端通常分两部分.一是生成验证码内容, 根据验证码内容干扰项等, 生成图片, 返回给客户端二是把验证码内容存储起来, 校验时取出来进行对比. Hutool 把验证码存储在Session里.2. 使用前需引入Hutool 依赖.
2025-06-24 21:57:09
937
原创 MySQL如何查看某个表所占空间大小?(表空间大小查看方法)
在MySQL数据库管理和优化中,了解表所占用的空间大小是非常重要的。ROUND((data_length+index_length)/1024/1024,2) AS ‘总大小(MB)’通过以上方法,您可以全面了解MySQL数据库中各个表的空间占用情况,为数据库优化和维护提供数据支持。二进制日志和事务日志:这些日志文件占用空间但不包含在表空间统计中。临时表空间:临时表和使用内存引擎的表不会显示在磁盘使用统计中。文件中(独立表空间)或共享表空间中。InnoDB表数据存储在。MyISAM表数据存储在。
2025-06-24 21:53:55
2796
原创 【MySQL基础】MySQL表操作全面指南:从创建到管理的深度解析
MySQL学习:在MySQL中,表是存储数据的主要对象,由行和列组成。理解表的基本结构对数据库设计至关重要。组成部分描述表名表的唯一标识符,遵循命名规则列(字段)表的垂直结构,定义数据的类型和约束行(记录)表的水平结构,实际存储的数据主键唯一标识表中每一行的列或列组合索引提高查询性能的数据结构约束保证数据完整性的规则语法各部分详细说明:参数描述示例注意事项IF NOT EXISTS避免表已存在时报错不会检查表结构是否相同列定义列名+数据类型+约束列名不能重复数据类型定义列存储的数据类型,,选择最合适的数据
2025-06-23 20:35:07
652
原创 MySQL 数据类型详解:字符串、数字、日期
MySQL 提供了**字符串(String)、数字(Numeric)和日期(Date & Time)**三大类数据类型,每种类型又有不同的子类型,以适应不同的业务需求。MySQL 提供了多种数据类型,每种类型都有其适用场景。合理选择数据类型可以提升存储效率、优化查询性能,并避免精度损失。在 MySQL 中,选择合适的数据类型对于数据库的。适用于长度不固定的文本,如用户昵称、电子邮件。适用于固定长度的数据,如国家代码、身份证号。当存储较长的文本或二进制数据时,使用。适用于非严格精度的计算,如游戏评分。
2025-06-23 20:29:10
917
原创 MySQL 复制与主从架构(Master-Slave)
无论是在异步复制中追求性能,还是在半同步复制中保证数据安全,都需要根据具体业务需求进行权衡和配置。希望这篇文章能为你在设计和优化 MySQL 复制架构时提供全面的参考和实用指导。通过复制数据到多个从服务器,既可以实现数据冗余备份,又能分担查询压力,提升系统整体性能与容错能力。本文将详细介绍 MySQL 复制的基本原理、配置方式、复制类型以及在主从架构中的实际应用场景。MySQL 复制指的是将主服务器(Master)上的数据变更自动传递到一个或多个从服务器(Slave)。可以检查复制状态,确保。
2025-06-22 21:38:13
744
原创 Spring MVC参数绑定终极手册:单&多参对象集合JSON文件上传精讲
我们通过浏览器访问不同的路径,就是在发送不同的请求,在发送请求时,可能会带一些参数,本文将介绍了Spring MVC中处理不同请求参数的多种方式。
2025-06-19 21:21:08
627
原创 HarmonyOS NEXT 技术特性:分布式软总线技术架构
HarmonyOS NEXT 分布式软总线技术架构通过统一协议栈与智能路由机制,重构跨设备通信底层逻辑,支持蓝牙、Wi-Fi等多介质自适应,实现手机、平板等设备间的无缝协同,将不同设备连接成一个有机整体,打破设备间的物理界限,实现跨设备的资源共享和协同工作。
2025-06-18 21:55:26
780
原创 深入解析MySQL Join算法原理与性能优化实战指南
这是最原始的Join实现方式,核心思路是外层表一条条取出数据,与内层表逐条比较。[外表] → 每行取出↓[内表] → 全表遍历或借助索引定位等值连接性能优秀;非常适合连接大数据集;不易受到数据倾斜影响。只适用于等值条件;构建阶段资源消耗较大;占用较多内存空间。
2025-06-16 11:16:40
855
原创 Spring 路由匹配机制详解:时间复杂度从 O(n) 降至 O(log n)
/ 实现组合匹配逻辑结构化路径模式:将字符串路径编译为可执行的匹配指令分层索引树:通过前缀树实现路径段快速跳转条件组合优化:多维条件并行匹配5ms内完成万级路由匹配,单机支撑2万+ QPS,为等高性能网关奠定基础。实际开发中应避免(已废弃),统一使用获得最佳性能。
2025-06-16 11:14:43
1031
原创 Web 毕设篇-适合小白、初级入门练手的 Spring Boot Web 毕业设计项目:智驿AI系统(前后端源码 + 数据库 sql 脚本)
文章目录???AI系统具有许多优势???1.0 项目介绍???1.1 项目功能? ? ? ? 1.2 用户端功能???2.0 用户登录???3.0 首页界面???4.0 物件管理功能? ? ? ? 5.0 用户管理功能? ? ? ? 6.0 区域管理功能? ? ? ? 7.0 物件日志管理功能? ? ? ? 8.0 操作日志1)自动化:AI 系统能够自动化执行任务,减少人力和时间成本。它们可以自动处理大量数据并执行复杂的计算,从而提高效率。2)智能决策:AI 系统可以通过学习和分析数据来做出智能决策。它们能
2025-06-12 20:32:54
672
原创 Spring Boot项目中实现单点登录(SSO)完整指南
单点登录(Single Sign-On, SSO)是一种身份验证机制,允许用户使用一组凭证(如用户名和密码)登录多个相关但独立的系统。
2025-06-12 20:30:52
932
原创 node.js卸载并重新安装(超详细图文步骤)
1、Node.js下载网址2、一路点击next3、安装到本地位置,按需求自行更换安装路径(建议不做修改默认C盘)4、不需要选择或更换,默认安装,直接next,它会自动添加系统变量。5、点击Install,进入如下图所示的Node.js install进度界面6、出现以下界面安装完成7、我们使用Windows+R快捷键,输入cmd进入命令行界面,验证安装是否成功:8、以上node的环境已经安装完成,npm包管理器也有了。
2025-06-12 20:28:49
949
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人