自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 资源 (4)
  • 收藏
  • 关注

原创 C++20新特性:[[no_unique_address]]属性详解

是C++20中一个实用的属性,它解决了长期存在的空对象空间开销问题,提供了比传统空基类优化更直观和安全的选择。虽然在使用上仍有一些限制(特别是对相同类型成员的处理),但在大多数情况下,它能有效优化内存使用,特别是在泛型编程和模板库实现中。随着编译器对C++20支持的不断完善,将成为C++开发者工具箱中的重要工具,用于编写更高效、更简洁的代码。进一步阅读:C++20还引入了[[likely]]和属性用于优化分支预测,以及其他一些有用特性,值得探索。

2025-09-09 15:09:16 886

原创 使用分治法减小C++模板递归深度

在C++模板元编程中,我们经常使用递归模板来实现编译时计算。然而,编译器对模板递归深度都有限制(通常为几百到几千层),当递归过深时会导致编译错误。例如,直接实现一个计算数组和的模板:cpp当N很大时,这种线性递归方式会迅速达到编译器的递归深度限制。

2025-09-09 15:08:28 507

原创 C语言之如何定义数据类型:从内置类型到自定义抽象

C语言不仅提供了丰富的内置(基本)数据类型,还赋予了程序员强大的能力来根据具体问题创建自定义的数据类型。这种能力是C语言既能贴近硬件又能构建复杂程序的基石。本文将系统地介绍在C语言中定义数据类型的几种核心方法。当内置类型不足以描述复杂的数据实体时,我们就需要自定义数据类型。枚举类型用于定义一组具有名字的整型常量(枚举常量),使代码更具可读性。cenum <枚举标签> { 常量1, 常量2, 常量3, ... };默认情况下,第一个常量的值为0,后续常量的值依次递增1。你也可以手动指定值。c。

2025-09-09 15:07:40 795

原创 一次因Nginx配置变更引发的全网关400错误故障复盘

在一个看似平常的午后,运维团队像往常一样,将一套测试环境验证通过的Nginx配置变更脚本,部署至生产环境的网关集群。:日志监控应设置更细粒度的告警规则,例如对同一错误类型(如400错误)在短时间内频繁出现的情况,应触发高级别告警,以便更快响应。:配置文件不应被视为可随意注释的脚本,而应像代码一样,拥有严格的语法和语义规范。的请求,却收到了所有乱七八糟的Host(包括直接通过IP地址访问的请求),于是果断地以。然而,问题在于,如果这个“被默认”的server块对Host头有严格校验(例如,配置了。

2025-09-09 15:06:52 538

原创 Tomcat服务假死原因分析与解决方案

Tomcat假死是指服务进程仍然存在,但无法正常响应请求的状态。通常表现为:客户端浏览器访问时长时间加载无结果无法返回4xx或5xx等HTTP错误码服务器CPU和内存使用率可能正常重启Tomcat后服务恢复正常Tomcat假死问题通常由资源耗尽(内存、线程、文件描述符)、代码缺陷(死锁、连接泄漏)或配置不当引起。通过系统化的排查方法:检查日志文件监控系统资源分析线程转储和堆转储优化配置参数可以有效地定位和解决大部分Tomcat假死问题。

2025-09-09 15:06:03 606

原创 记一次.NET内存居高不下排查解决与启示

在.NET应用的运维生涯中,“内存泄漏”或“内存居高不下”是一个令人头疼却又无法回避的经典问题。每一次成功的解决,不仅是修复了一个Bug,更是对.NET运行时理解的一次深化。代码中为了“优化”性能,将大量数据缓存到了内存中,并且设置了很长的过期时间(SlidingExpiration),但缓存键的设计不合理,导致缓存条目无限增长,从未被淘汰。深刻理解.NET的垃圾回收机制,尤其是代际(Generations)和根(Roots)的概念。它们是诊断.NET内存问题的“CT机”,没有它们,排查工作将是盲人摸象。

2025-09-09 15:05:03 671

原创 巧用CSS实现镂空内凹圆角边框按钮

通过巧用CSS伪元素和阴影特性,我们可以创建出视觉上复杂但代码简洁的内凹镂空按钮效果。这种方法无需使用图片或SVG,保持了代码的轻量性和可维护性,同时能够轻松适应不同尺寸和颜色变体。这种技术不仅可以用于按钮,还可以应用于卡片、导航元素和其他需要突出显示的UI组件,为网页设计增添精致的细节和现代感。

2025-09-09 15:04:11 500

原创 利用 C# 的强类型力量:构建一个类型安全的 Brainfuck 编译器

解析阶段产生的 AST 是强类型的。解析器的任务是将原始的字符串(充满可能无效的字符)转换为我们定义的良好类型的 AST。

2025-09-09 15:03:18 488

原创 线程池中父子任务的陷阱:如何避免死锁与性能瓶颈

线程池中的父子任务问题是一个典型但容易被忽视的陷阱。通过理解问题根源、采用合适的线程池策略、使用现代异步编程工具以及实施有效的监控措施,我们可以避免这些陷阱,构建更加健壮和高效的并发应用。永远不要假设线程池会无限扩展,总是要考虑最坏情况下的资源竞争和依赖关系。

2025-09-09 15:02:22 344

原创 架构之道:从LangChain看AI应用工程的系统化设计

人工智能正在重塑软件开发的本质。随着大语言模型能力的飞速提升,开发者们突然发现自己站在了一个新时代的门槛上:不再需要从零开始构建智能能力,而是要学会如何将现成的强大AI能力有效地集成到实际应用中。然而,这种集成远非简单的API调用那么简单,它带来了一系列前所未有的工程挑战。在这个背景下,LangChain应运而生。它不仅仅是一个工具库,更是一种对AI应用工程化的系统性思考。本文将深入分析LangChain的架构设计,揭示其背后的工程哲学,并探讨如何将这些设计原则应用于实际的AI应用开发中。

2025-09-09 15:01:15 1000

原创 HTML常用的图片标签和超链接标签

在 HTML 中,图片标签(<img>)和超链接标签(<a>)是构建页面视觉呈现与交互跳转的核心元素。<img>用于嵌入图像资源,<a>用于实现页面跳转、锚点定位或文件下载,两者常结合使用以提升页面体验。

2025-09-07 22:04:54 1061

原创 windows上安装虚拟机及搭建Linux环境

点击 “自定义硬件” 可调整配置(默认足够用,后续可修改):内存:建议 ≥ 2GB(若电脑内存 ≥ 8GB,可设 4GB,运行更流畅);处理器:建议 ≥ 2 核(根据电脑 CPU 核心数分配,如电脑是 4 核,可设 2 核);网络适配器:默认 “NAT” 模式(虚拟机可联网,无需额外配置);点击 “完成”,虚拟机创建完成(此时还未安装 Linux 系统,只是创建了 “空的虚拟机容器”)。

2025-09-07 21:37:35 2802

原创 C语言操作符和数据类型的存储详解

在 C 语言中,决定了变量在内存中占用的空间大小、取值范围及二进制表示规则,而则定义了对这些数据的运算逻辑。两者紧密关联 —— 操作符的有效性和运算结果依赖于操作数的数据类型,数据类型的存储特性也会直接影响操作符的执行细节(如溢出、符号位处理)。以下从 “数据类型的存储” 和 “核心操作符” 两方面展开详解,并结合两者的关联场景分析。

2025-09-07 20:39:55 1886

原创 CSS设置内外边距

在 CSS 中,内边距(padding)和外边距(margin。

2025-09-07 20:36:53 1203

原创 CSS display属性

CSS 的display属性用于定义元素的,决定元素在页面布局中如何布局(如是否独占一行、是否允许其他元素同行排列),是控制页面布局的核心属性之一。不同的display。

2025-09-07 20:31:03 1733

原创 JavaScript变量及数据类型

在 JavaScript 中,变量是存储数据的容器,而数据类型则定义了变量中存储数据的种类和可执行的操作。

2025-09-07 20:29:17 1023

原创 javascript中的DOM和BOM

在 J中,DOM(文档对象模型)和(浏览器对象模型)是与浏览器交互的核心技术,但二者聚焦的范围和功能截然不同。

2025-09-07 20:26:53 753

原创 CSS伪类选择器

伪类选择器用于选中元素或的元素(如鼠标悬停、首行文本、未访问链接等),它们以冒号开头,不依赖 HTML 结构或类名,而是基于元素的动态状态或语义关系匹配。

2025-09-07 20:25:02 553

原创 JavaScript数字(Number)个数学(Math)对象

在中,Number是基本数据类型,用于表示数值(整数、浮点数等),而Math是内置对象,提供了丰富的数学运算方法(如三角函数、取整、随机数等),两者配合可满足大部分数学计算需求。

2025-09-07 20:22:36 723

原创 实战:用OpenCV和Python进行人脸识别

Python为网络爬虫开发提供了全面而强大的工具生态系统。从简单的数据收集任务到复杂的分布式爬虫系统,Python都能胜任。初学者建议从Requests和BeautifulSoup开始,掌握基础后再逐步学习Scrapy等高级框架和异步编程技术。最重要的是,始终牢记爬虫开发的伦理和法律边界,做负责任的网络公民。只有在合法合规的前提下,爬虫技术才能发挥其真正的价值。

2025-09-03 21:26:08 492

原创 【Redis篇】String类型命令详讲以及它的使用场景

Redis 的)是最基础也是最常用的数据类型,它能存储字符串、数字甚至二进制数据(如图片),最大容量为 512MB。String 类型操作简单高效,是 Redis 中应用最广泛的数据类型之一。

2025-08-31 21:02:00 817

原创 【Redis篇】Hash的认识以及相关命令操作

中的哈希)是一种键值对集合,适合存储对象类型的数据。它类似于 Java 中的HashMap或 Python 中的字典,允许将多个字段(field)和值(value)关联到同一个键(key)下。

2025-08-31 20:32:16 924

原创 【MySQL篇】使用Java操作MySQL实现数据交互

使用 Java 操作数据库是 Java 开发中常见的需求,主要通过 JDBC(Java Database Connectivity)技术实现。

2025-08-31 20:28:23 956

原创 【接口自动化】pytest的基本使用

是 Python 中一款强大的测试框架,因其简洁的语法、丰富的插件生态和灵活的测试用例组织方式,被广泛用于接口自动化测试。

2025-08-31 19:51:14 486

原创 【Java】HashMap的详细介绍

当使用自定义对象作为 key 时,必须重写hashCode()和equals()方法,否则会导致无法正确查找或删除元素:java运行// 构造方法、getter、setter 省略// 重写 hashCode() 和 equals()@Override// 基于唯一标识 id 计算哈希值@Override// 基于 id 判断是否相同// 使用自定义对象作为 key。

2025-08-31 19:49:16 1044

原创 Bean的自动装配

在 Spring 中,Bean 的自动装配(Autowiring)是指容器自动将依赖的 Bean 注入到目标 Bean 中的过程,无需手动通过。自动装配是 Spring 依赖注入(DI)的核心特性之一,合理使用能大幅提升开发效率,尤其在大型项目中优势明显。实际开发中,推荐使用。,自动识别目标 Bean 所依赖的其他 Bean,并将其注入到目标 Bean 中。显式配置依赖,极大简化了配置。的组合,兼顾灵活性和可读性。),Spring 会自动将。在 XML 配置中,通过。Spring 容器通过。

2025-08-21 17:41:21 521

原创 Spring-bean的作用域

的作用域(Scope)定义了 Bean 实例的生命周期和创建方式,即容器如何创建和管理 Bean 的实例。通过选择合适的作用域,可以优化 Bean 的创建和销毁时机,提高应用性能并避免状态管理问题。

2025-08-21 17:39:40 960

原创 io流中read与readline的区别

(字符流)的抽象类中,是所有字节流 / 字符流的基础读取方法。它是一个便捷方法,用于按行读取文本数据。:读取单个字节或单个字符。),字节流没有这个方法。

2025-08-21 17:38:01 1002

原创 Nexus 3 搭建私有maven仓库

中,索引和外键是两个重要的数据库概念,分别用于提升查询性能和维护表之间的关系完整性。用于全文搜索,适用于长文本字段(如文章内容),仅支持 InnoDB 和 MyISAM 引擎。确保列的值唯一(允许 NULL 值),可用于邮箱、手机号等需要唯一约束的字段。索引是一种数据结构,用于快速查询表中的数据,类似于书籍的目录。,但会略微降低插入、更新和删除的性能(因为需要维护索引结构)。最基本的索引,无唯一性约束,用于加速查询频繁的字段。外键是表中的一个字段(或多个字段),用于。唯一标识表中的记录,默认自动创建,

2025-08-21 17:36:40 849

原创 Nexus 3 搭建私有maven仓库(linux)

至此,Nexus 3 私有 Maven 仓库搭建完成。你可以通过 Nexus 控制台管理仓库、查看已上传的依赖包等。或 Maven 全局配置。

2025-08-21 17:35:03 438

空空如也

空空如也

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

TA关注的人

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