自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(341)
  • 资源 (2)
  • 收藏
  • 关注

原创 记录一次现场性能故障排查总结

这篇文章讲述了作者排查一个Electron+React应用性能问题的完整过程。应用在部分Win7云环境机器上出现核心页面卡顿,表现为鼠标移动慢、点击响应延迟和列表加载缓慢。作者通过性能分析工具逐步定位问题:首先排除网络问题,发现主线程阻塞;然后通过CPU、FPS监控确认性能瓶颈;最后用Performance录制分析火焰图,发现大量强制同步重排导致的长任务。结论是核心页面存在频繁DOM操作触发的样式重计算,在低配机器上表现尤为明显。文章详细展示了性能排查的思路和方法论,强调证据链式的分析过程。

2026-07-20 17:38:35 275 1

原创 实测4090显卡Lora微调写网文效果

我用4090微调LoRA写网文,没想到先解决的是AI味

2026-07-09 22:26:24 422 1

原创 【2026年7月最新】69道RAG面试题

RAG本身的概念还是很容易理解的,既: 索引→检索→生成→评估 四个环节串联,但是在实际的开发项目中还是经常遇到一些问题,而最好的方式就是通过面试题的形式进行记忆和查找,以点带线,以线促面,以下面试题基于实际开发项目以及我们要想掌握RAG必须会的。ps:建议学习一下milvus的使用

2026-07-07 12:25:55 359 2

原创 Node.js 掌握度 20 题自测水平

以node视角来打通后端业务和常见的场景问题

2026-06-09 20:30:00 475 2

原创 解决 Python 项目依赖混乱、运行不方便的问题

本文的核心在于解决不同项目不同依赖的问题减少环境配置导致的浪费时间浪费生命!这篇文章记录一次从头配置 Cursor + Conda 的过程,方便以后换电脑、换公司、重新搭环境时快速恢复。

2026-05-29 21:45:00 283 1

原创 Skills 到底是什么?别再把它只当成提示词了

Skills 更准确的理解应该是:把某类高频工程任务中的经验、流程、约束和检查标准,整理成 Agent 可以按需调用的能力包。

2026-05-21 21:38:55 544 2

原创 从 Transformer 到 GPT:Decoder-only 为什么成为大模型主流架构?

本文澄清了关于Transformer架构的常见误解,特别是GPT等大模型采用的Decoder-only结构。文章指出,Embedding和Position Encoding只是文本预处理步骤,并非Encoder部分。经典Transformer采用Encoder-Decoder结构先理解再生成,而GPT通过Masked Self-Attention在生成过程中动态理解文本……

2026-05-13 08:15:00 451 2

原创 别再死背 Node 面试题了:20 个问题看懂后端底层逻辑

Node后端开发核心知识全景图 Node后端开发的核心在于利用JavaScript构建高性能服务端应用,通过事件循环机制处理高并发I/O操作。主要包含以下关键点: 运行机制:基于V8引擎和libuv库,采用事件循环处理异步I/O 模块系统:CommonJS和ES Module两种模块规范 框架选择:Express/Koa/NestJS等主流框架 网络协议:HTTP/WebSocket等协议支持 工程能力:日志、鉴权、错误处理等 稳定性:内存泄漏排查、进程管理等 性能优化:流处理、缓存、多进程等 面试重点包括

2026-05-11 21:45:00 826 2

原创 【node】 CommonJS的用法和原理

这篇文章通过一个Node.js面试题深入解析了CommonJS模块系统中module.exports和exports的关系。主要内容包括: 初始状态下exports是module.exports的引用,指向同一个空对象 直接给exports赋值会断开引用关系,而修改其属性则不会 Node.js实际导出的是module.exports而非exports 常见误区和正确用法的对比分析 用生活化的例子解释两者关系 揭示了Node.js模块加载的底层原理 核心结论:始终使用module.exports进行导出最安全

2026-04-28 07:15:00 467 1

原创 Node实战中的多线程多进程使用经验总结

本文主要讲述项目实战中的架构选择,从而更好的处理性能问题

2026-04-27 12:30:00 104 1

原创 【Node】Cluster和死锁问题

用讲故事的方式介绍cluster和死锁的问题

2026-04-26 14:45:00 423 2

原创 【Node】用来处理CPU密集型任务的利器Worker Threads

通过故事的形式深入理解worker threads原理

2026-04-25 17:30:00 436 2

原创 【node】Stream 背压:厨房里砧板太小引发的血案

本文通过小吃店流水线的生动比喻,解释了Node.js中Stream背压机制的原理和实现。当上游数据生产速度(如洗菜工100盘/分钟)远高于下游处理速度(如厨师10盘/分钟)时,若不控制会导致内存溢出(OOM)。背压机制通过writable.write()返回值和drain事件实现流量控制:当下游缓冲区满时暂停上游生产,待下游处理完再恢复。文章对比了手动实现背压和使用pipe()自动处理的区别,并指出背压在大数据查询等场景的关键作用,最终强调背压的核心是"下游消费速度控制上游生产速度",通

2026-04-25 10:45:00 311 2

原创 一家小吃店,让你彻底看懂 Node.js 事件循环

深入浅出的讲述node中事件循环的原理

2026-04-24 16:19:29 463 1

原创 表格这玩意儿,是怎么越搞越复杂的

文章摘要 表格技术在过去25年经历了显著演进: 1995年:静态HTML表格,纯DOM展示。 2005年:数据驱动渲染,通过JS动态生成表格内容。 2010年:多表叠加解决横向滚动问题,同步滚动与行高对齐成为关键。 2015年:虚拟滚动技术应对海量数据,仅渲染可视区域,优化性能。 2018年:多级表头自动计算跨度和层级,简化复杂表头设计。 2020年:差量状态管理实现高效跨页全选,减少带宽与内存消耗。 这一演进反映了从静态展示到动态交互、从性能优化到复杂功能支持的完整技术发展路径。

2026-04-16 09:30:00 465 2

原创 面试官:你写了 3 年后台,能讲透表格的原理吗?

这篇文章深入解析了Element Plus表格组件的核心原理与高级应用,主要涵盖以下内容: 基础渲染原理:列配置解析、数据映射和网格生成的流程 多级表头算法:通过自底向上计算colSpan和自顶向下渲染rowSpan 合并单元格实现:预先占坑的算法设计避免重复渲染 固定列方案:采用多表叠加而非CSS sticky定位的工业级解决方案 虚拟滚动优化:可视区计算与动态渲染的技术实现 跨页全选设计:基于"例外集合"的差量状态管理,大幅优化大数据量场景性能 文章通过面试问答形式,揭示了表格组件背

2026-04-15 20:00:00 405 1

原创 BFF 架构决策与落地实践:从第一性原理到工程取舍

BFF 的价值在于精准地解决了前后端协作中的阻抗失配问题,其代价则是系统复杂度的相应增加。作为一个架构决策,它要求决策者清楚识别问题是否存在、收益是否覆盖成本、边界能否守住。在实践中,保持简单、渐进演进、严守职责边界,是让 BFF 持续发挥价值的关键。经历多个项目的迭代后,愈加体会到:好的架构不是凭空设计出来的,而是随着问题逐步浮现、逐步推演生长出来的。BFF 正是这样一个在问题驱动下诞生的务实模式。

2026-04-15 08:00:00 859 2

原创 部署BFF与前端的踩坑与经验记录

摘要 本文记录了从纯前端架构转向引入Node BFF层时遇到的502错误排查过程。最初的Nginx代理方案因Docker网络隔离(容器内127.0.0.1指向自身而非宿主机)导致Nginx无法连接BFF服务。经过排查Express路由语法、IPv6监听、PM2环境变量等问题后,最终采用BFF全包模式:由Node同时托管静态文件和API,去除Nginx中间层。关键经验包括明确架构拓扑、逐层验证连通性,以及注意容器网络隔离特性。这种简化架构在小规模项目中能有效降低运维复杂度。

2026-04-13 17:37:38 399 2

原创 机器学习经验总结整理

第一种:有监督学习,数据中有标签且标签是连续的则为回归任务,比如薪资、房价这种数字;不是连续的也就是离散的就是分类任务,像健康情况,电影类别;可以看到区分回归和分类其实很简单,像标签的个数是有限的几个就是分类,像薪资这种的数值非常多的是回归,可以联想到一根直线上的无数点回归和分类的区别,不要看名字看标签类型。特征工程是投入产出比最高的环节,树模型不需要归一化。面试/汇报时,谈到分类模型,一定先问一句:“数据均衡吗?看准确率还是 F1?XGBoost和LightGBM。

2026-04-09 18:00:05 753 2

原创 【从0开始手把手带你学three.js】之模型加载与资源管理

本文介绍了使用Three.js加载3D模型的关键技术,包括选择glTF/GLB格式的优势、LoadingManager进度管理、HDR环境贴图的作用,以及模型加载、动画控制和内存管理的核心操作。

2026-03-25 09:00:00 830 2

原创 5分钟本地跑起大模型

Ollama是一款免费工具,可帮助用户在本地电脑上安装和运行大型AI模型。它简化了复杂模型的下载和部署过程,支持离线使用和个性化微调,无需API密钥。安装只需两步:下载对应系统版本并双击安装。用户可根据显卡性能选择合适大小的模型,并通过界面或命令行与模型交互。此外,可搭配Chatbox软件获得更好的交互界面,并支持修改模型存储路径以节省C盘空间。Ollama为本地AI模型运行提供了便捷的解决方案。

2026-03-18 18:04:54 403 2

原创 【从0开始手把手带你学three.js】之材质与光照系统

本文介绍了Three.js中材质、光照和阴影系统的核心概念。重点对比了Basic、Lambert、Phong、Standard和Physical五种材质的特性,指出Standard和Physical材质基于PBR原理,通过roughness和metalness参数实现物理真实感渲染。详细解析了五种光源的作用及阴影映射技术,强调优化shadow.camera范围对提升阴影质量的关键作用。最后总结了常见问题如金属材质变黑、阴影锯齿和点光源过暗的解决方案。这些基础概念为后续实现更复杂的三维效果奠定了重要基础。

2026-03-10 17:11:53 586 1

原创 【从0开始手把手带你学three.js】之搭建第一个 Three.js 场景

未来一段时间很可能是AI-agent开发的黄金时期,大量企业需要接入AI的同时需要3d可视化(尤其是国企),而目前乃至之后的一段时间,顶级的大模型比如opus4.6依然不能做到,这也许是前端目前为数不多的护城河。也是跳槽涨薪的利剑;该系列文章的出发点在于我们在实际开发中其实并非经常开发容易忘记知识点,手梳;所以这个系列的文章主打从0开始分模块的训练,包括怎么写效果。原理是什么?面试会考什么?有哪些坑需要你注意。我希望这些文章可以快速的上手实际开发

2026-03-10 15:16:35 573 2

原创 前端大数据渲染性能优化:Web Worker + 分片处理 + 渐进式渲染

本文提出了一种优化大数据页面加载的解决方案,通过Web Worker分片处理和主线程渐进式渲染相结合的方式,有效解决传统方案导致的页面卡顿问题。该方案将数据解析任务移至Web Worker独立线程执行,采用分片处理机制逐批返回结果,并在主线程控制渲染节奏,确保用户能够立即看到内容并逐步加载完成。相比直接同步处理、setTimeout分片和虚拟列表等传统方案,这种组合方法既避免了主线程阻塞,又实现了流畅的渐进式用户体验,特别适用于需要处理大量数据的场景。

2026-01-20 16:28:15 1123 2

原创 Go 函数与错误处理实战

本文将深入 Go 函数的核心机制与错误处理哲学,教你编写既简洁又健壮的 Go 代码。学完本篇,你将掌握 Go 在函数设计和错误处理上的独特优势。

2026-01-13 09:15:00 845 2

原创 Go 一小时上手指南:从零到运行第一个程序

本文是Go语言快速入门指南,60分钟内掌握核心概念并编写首个程序。首先介绍Go的三大优势:快速编译、原生并发和简单部署。接着详细讲解安装步骤(支持多平台)、第一个"Hello World"程序的创建与运行方式。重点讲解Go的变量声明(4种方式)和基础数据类型(整型、浮点、布尔、字符串)。控制结构部分涵盖if语句、for循环(Go唯一循环结构)和灵活的switch语句。最后通过温度转换程序实战,综合运用命令行参数处理、类型转换和函数定义等知识。全文强调Go的简洁语法特点:类型后置、无分号、

2026-01-12 22:02:14 843 2

原创 PDF 与 Markdown 格式下载步骤附完整代码

本文介绍了三种方式(npm/yarn/pnpm)安装PDF生成依赖库(jspdf、html2canvas、marked),并详细讲解了Markdown和PDF两种格式的下载实现方法。对于Markdown下载,使用浏览器原生API通过Blob对象转换文本内容;对于PDF下载,采用Markdown→HTML→Canvas→PDF的转换流程,提供了完整的代码实现和样式美化方案。文章还包含多页PDF处理、清晰度优化等实用技巧,以及专业的CSS样式配置建议。

2025-12-29 18:48:50 770 2

原创 3D地球可视化教程 - 第6篇:蜂巢网格与自定义几何体

本文介绍了基于Three.js和GLSL的程序化几何体生成技术,重点探讨了球面六边形密铺的实现方法。通过分析六边形密铺的数学原理和球面几何挑战,提出了自适应密度、极点特殊处理等解决方案。文章详细讲解了球面网格生成算法和六边形创建技术,包括局部坐标系建立、角度尺寸控制和球面投影等关键点。同时展示了高级着色器编程实现的扫光动画系统,包含线性扫光算法、参数控制系统和拖尾效果。这些技术组合可创造出具有科幻感的视觉效果,适用于游戏开发、数据可视化等领域。

2025-12-26 10:55:00 924 2

原创 如何实现网络拓扑图(文末完整实现步骤)

节点分级光晕、连接线流动动画、自定义节点图标、智能布局、数据实时刷新,文末有完整的步骤

2025-12-02 13:58:55 933 1

原创 3D地球可视化教程 - 第5篇:星空背景与粒子系统

本文介绍了使用Three.js和粒子系统创建3D宇宙星空背景的技术方案。教程分为远景星空和近地轨道星两个系统:远景星空采用球面均匀分布算法生成4000颗星星,通过Canvas纹理创建渐变星光效果,并实现基于正弦波的闪烁动画;近地轨道星则利用实例化渲染技术,在5层不同半径的轨道上分布250颗星星,结合脉动、轨道等多种动画模式。文章详细讲解了粒子系统设计原理、实例化渲染优化、程序化纹理生成以及高级动画算法等技术要点,最终实现了一个层次丰富、性能高效的宇宙星空场景。该技术可广泛应用于3D地球可视化等场景中。

2025-11-14 16:51:28 1551 1

原创 3D地球可视化教程 - 第4篇:云层系统与纹理动画

本教程介绍如何使用Three.js为3D地球添加动态云层系统,提升视觉真实感。主要内容包括:创建稍大于地球的云层几何体,配置MeshPhysicalMaterial物理材质实现透明度与光照效果,设计纹理动画模拟大气环流(云层旋转速度比地球快1.5倍),并提供了脉动和透明度动画等可选增强效果。通过双面渲染、深度写入禁用等技巧解决透明物体渲染问题,最终实现专业级的大气层视觉效果。教程适合已掌握Three.js基础的中级开发者,学习时间约35分钟。

2025-10-27 11:28:31 1358 2

原创 3D地球可视化教程 - 第3篇:地球动画与相机控制

本文介绍了使用Three.js、GSAP和数学几何原理实现3D地球动画系统的技术方案。主要内容包括:1)利用GSAP时间线管理动画序列和时序控制;2)通过二次贝塞尔曲线创建平滑的弧形运动路径;3)设计自动旋转系统实现地球持续转动效果;4)采用分层时序设计实现地球入场、圆环、飞线和UI界面的动画组合。该方案通过动态效果增强视觉吸引力,使用缓动函数提升用户体验,并运用数学原理优化运动轨迹,构建了一个完整的3D动画系统。

2025-10-10 16:28:36 1489 2

原创 3D地球可视化教程 - 第2篇:夜晚纹理与着色器入门

摘要 本教程介绍了使用Three.js和GLSL着色器实现地球夜晚视觉效果的技术方案。通过自定义着色器编程,开发者可以创建包含城市灯光、昼夜过渡等高级效果的地球渲染系统。教程详细讲解了顶点着色器和片段着色器的工作原理,重点介绍了光照计算、纹理混合、透明度处理等核心技术。文章还提供了完整的参数配置系统,包括亮度、对比度、颜色通道等可调节参数,帮助开发者实现逼真的地球昼夜效果。最终效果展示了白天与夜晚纹理的智能混合,以及平滑的昼夜过渡分界线。

2025-09-15 16:31:59 1108 1

原创 3D地球可视化教程 - 第1篇:基础地球渲染系统

本教程介绍了如何使用Vue3 + Three.js创建交互式3D地球可视化。主要内容包括: 基础概念:讲解Three.js的核心组件(场景、相机、渲染器)和物体构成原理 地球实现:使用SphereGeometry创建球体,配合Phong材质和多种纹理贴图实现真实感渲染 光照系统:组合方向光、环境光和点光源来模拟太阳光、天空散射和城市灯光效果 交互控制:通过自定义控制器实现流畅的鼠标旋转和缩放功能 项目架构:采用模块化设计,包含场景管理、地球渲染、光照系统和交互控制等组件 最终效果展示了一个可交互的3D地球,

2025-09-08 14:57:01 1379 2

原创 前端RSA加密遇到Java后端解密失败的问题解决

文章摘要: 在企业级Web应用开发中,使用RSA-OAEP加密传输密码时,Java后端解密失败而其他语言(Node.js/Python/Go)成功。经排查发现,Java的MGF1默认使用SHA-1而非SHA-256,导致跨语言不兼容。解决方案是修改前端加密代码,使MGF1也使用SHA-1。该问题源于PKCS#1标准演进与Java的保守默认设置,提醒开发者注意加密实现细节的跨语言差异。

2025-08-28 16:37:18 1558 2

原创 前端RSA加密库优缺点总结

本文对比分析了主流前端RSA加密库的优缺点与应用场景。Web Crypto API性能最优但仅支持HTTPS环境;JSEncrypt兼容性好但安全性较低;Node-Forge功能全面适合内网HTTP环境;NodeRSA和jsrsasign则分别适合Node.js后端和专业安全应用。根据实际项目需求,建议HTTPS环境优先使用Web Crypto API,内网HTTP环境选用Node-Forge,兼容性场景考虑JSEncrypt,并推荐采用多重方案的渐进式降级策略,兼顾性能、安全性和兼容性。

2025-08-26 15:41:47 1788 1

原创 如何在Vue中使用拓扑图功能

本文介绍了一个基于Vue.js和AntV G6构建的网络拓扑图组件,具有以下特点:支持自定义节点图标、智能力导向布局、丰富的交互功能(拖拽、缩放、悬停等)以及详细的漏洞信息展示。实现步骤包括安装依赖、准备图标资源、创建组件、数据获取和拓扑图初始化,并提供了节点和边缘的数据结构说明。组件还支持高级功能如节点状态管理、动态数据更新和搜索筛选。该组件适用于可视化网络结构并展示安全漏洞信息。

2025-08-08 16:00:44 2127 2

原创 SSE(Server-Sent Events)是什么、作用以及如何使用

相比WebSocket,SSE实现更简单但仅支持单向通信。前端通过EventSource API建立连接,后端需设置text/event-stream响应头。SSE支持自动重连…

2025-07-18 15:23:38 1175 2

原创 #使用Vanta.js 和 GSAP 制作炫酷登录页的完整指南

本文介绍了使用Vanta.js创建3D动态背景并结合GSAP实现流畅动画效果的技术方案。主要内容包括:1)Vanta.js的基础集成和核心实现代码,详细说明了3D背景的初始化、配置参数和响应式处理;2)GSAP动画系统的分层设计,重点展示了史诗级入场动画序列的实现方法,包括时间线编排和多种动画效果的组合运用。文章提供了完整的代码示例,涵盖颜色配置、交互控制和性能优化等关键技术点,为开发者构建高质量动态背景和复杂动画序列提供了实用参考。

2025-07-02 14:06:49 583 3

原创 GSAP 动画库在 Vue3 项目中的使用总结

本文介绍了如何在Vue3项目中集成GSAP动画库,实现专业级动画效果。首先分析了GSAP的技术优势,包括性能卓越、兼容性强和精确控制等特点,并对比了CSS动画和Web Animation API等方案。详细讲解了安装配置步骤和Vue3 Composition API的最佳实践,强调延迟初始化、资源清理和响应式集成等核心原则。通过实际代码示例展示了数字递增动画和卡片入场动画的实现技巧,包括使用textContent属性、onUpdate回调以及序列延迟等关键方法。文章还提供了完整的Vue3组件代码框架,帮助开

2025-07-01 10:45:47 2823 4

node.js+express框架+通用的express框架模版+适合做二次开发

项目使用三层架构,既数据层(dao)、表现层(routes)、逻辑层(service) 已经完成jwt功能 完成对常见错误的封装 完成数据响应格式封装 如果启动项目报错,大概率是数据库原因,请先安装数据库,并配置数据库,修改位置:.env && dao/dbConnect 当前node版本:v16.16.0 npm版本:8.11.0

2024-01-15

node+vue全栈入门项目 百分百可运行

前端vue+后端node+mysql 想要更好地学习可查看我写的博客,对全栈开发有帮助,博客链接如下 https://haoying.blog.csdn.net/article/details/123660641

2022-03-22

Vue-Devtools--master.7z

这个比较好用,适用于vue2版本

2021-12-07

移动web.xmind

思维导图,前端移动web的所有知识点

2021-07-06

空空如也

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

TA关注的人

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