基于.NET操作Excel COM组件生成数据透视报表
在当今数据驱动的商业环境中,数据透视表是Excel中最强大的数据分析工具之一。它能够快速将大量复杂的数据转换为清晰、易于理解的汇总报表,帮助分析师和决策者从不同维度洞察数据趋势和规律。通过数据透视表,用户可以轻松地进行数据的汇总、筛选、排序和比较,而无需编写复杂的公式。 传统的手工创建数据透视表过程 ...
记一次 .NET 某MES上位机拍照系统 内存暴涨分析
一:背景 1. 讲故事 这是训练营里的一位朋友找到我的,说他们的系统会有偶发的内存暴涨情况,自己也没分析出来,让我帮忙看下怎么回事,拿了一个20G+的dump文件,这文件是够大的,我个人建议一般是不超过10G,不然的话windbg分析起来很吃力。 二:内存暴涨分析 1. 为什么会内存暴涨 还是老办法 ...
FastAPI + TinyDB并发陷阱与实战:告别数据错乱的解决方案
本文针对在FastAPI框架下使用TinyDB(JSON文件数据库)时,因多人同时读写导致的并发数据冲突问题,进行了深度剖析。文章通过生动的比喻解释了问题根源,并详细提供了文件锁、内存操作队列和应用层乐观锁三种由浅入深的实战解决方案,附有可直接整合的代码示例。同时,明确了各方案的适用场景与局限性,为... ...
PHP 异步与多线程 从 TrueAsync 展望未来
PHP 异步与多线程 从 TrueAsync 展望未来 RFC TrueAsync 1.7 讨论中有个问题:这个提议会如何与 PHP 核心未来的变化互动?要设计好语言的长期演进,至少得对 PHP 的发展方向有基本判断。本文试图回答这个问题。 TrueAsync 项目不仅是 PHP 核心的 async ...
为什么说 IO 操作异步才有意义
为什么说 IO 操作异步才有意义,CPU 密集操作异步没有意义 背景与问题 在后端开发中,我们经常讨论异步编程模型,尤其是在 Node.js、Netty 等技术栈中。一个普遍的共识是:异步对于 IO 操作 效果显著,而对于 CPU 密集型操作 却意义不大,甚至可能起反作用。这背后的原因是什么? 本文 ...
Claude Code 完全指南:使用方式、技巧与最佳实践
Claude Code 完全指南:使用方式、技巧与最佳实践 最近在深度使用 Claude Code,发现真的很香!即整理了一份全面的指南,从零开始逐步了解 Claude Code 的核心功能、高级特性和最佳实践。这篇博客实际上更像是一本工具书,让我自己在使用时也能随时参考其内容,更好的使用这个强大的 ...
吴恩达深度学习课程五:自然语言处理 第一周:循环神经网络 (二)循环神经网络
此分类用于记录吴恩达深度学习课程的学习笔记。 课程相关信息链接如下: 原课程视频链接:[双语字幕]吴恩达深度学习deeplearning.ai github课程资料,含课件与笔记:吴恩达深度学习教学资料 课程配套练习(中英)与答案:吴恩达深度学习课后习题与答案 本篇为第五课的第一周内容,1.2到1. ...
数据可视化五大黄金原则:让你的图表“会说话”
在日常工作中,你是否遇到过这种情况:你辛辛苦苦跑完数据,画了一张图表发给老板或客户,结果对方盯着看了半天,问了一句:“所以,你想表达什么?” 这就像讲笑话没人笑一样尴尬。图表的本质不是 “画图”,而是 “沟通”。 今天,我将分享 5 个提升可视化效果的原则,并用 Python 的 matplotli ...
解决java客户端连接ssh失败问题
问题现象 有的运维工具使用了java的ssh客户端,这些客户端和服务端间有时会出现加密算法协商失败和主机密钥类型协商失败的问题,该问题是由于新客户端/服务端禁用了相关的不安全算法和密钥类型,本文简要记录下该问题的解决方法以备不时之需。 错误常见提示如下: #加密算法协商失败 Unable to ne ...
大道至简:如何用最轻量的代码实现跨团队的微服务契约?
大道至简:如何用最轻量的代码实现跨团队的微服务契约? 1. 二十年的架构长征:从加法到减法 回首我的职业生涯,有三个时间坐标让我印象深刻: 2006 年: 身边同事开始谈论 DDD(领域驱动设计)和马丁·福勒的《企业应用架构模式》。那是求知的年代,我们试图通过增加模式的复杂度来驯服代码的混乱。 20 ...
Python微信群发消息
微信自带的群发助手不支持为每位收件人自定义消息内容,导致群发过程单调且缺乏个性化。因此,我希望通过编写程序来实现自动发送消息,并允许提前准备文本内容,方便后续直接调用。目前项目已基本完成,但由于担心可能引发微信账号风险,尚未投入实际使用。欢迎有兴趣的朋友在此基础上进一步开发和完善。 前期调研 调研的 ...
Flink源码阅读:双流操作
今天来梳理一下 Flink 双流操作相关的源码。 写在前面 通过Flink学习笔记:多流 Join一文的介绍,我们知道 Flink 有三种数据关联的方式,分别是 Window Join、Interval Join 和 CoGroup。下面我们分别看下这三种关联方式的源码实现。 Window Join ...
AUC 的两种等价定义:从排序概率到 ROC 曲线的统一理解
AUC 的两种等价定义:从排序概率到 ROC 曲线的统一理解 在推荐系统与广告排序中,AUC 是最常用、也最容易被误解的离线评估指标之一。很多人同时接触过两种说法: 一种是“ROC 曲线下面积”,另一种是“正样本排在负样本前面的概率”。这并不是两种不同的指标,而是同一个指标的两种完全等价的定义。 一 ...
性能提升4倍!使用Granian作为Django项目的ASGI服务器
前言 最近我又继续在开发 DjangoStarter 的新版本了。 之前为了实现 docker 部署,我把 Nginx 打包进了 DjangoStarter 的 compose 配置里了,不过这带来了配置的复杂度,特别是还要搭配框架实现 URL prefix 之类的功能。 从 v3.2.x 版本开始 ...
GrralVM25打包SpringBoot成可执行文件Native-Image最佳实践
此为作者摸索出的较为简洁的最佳实践,如有更好方法,可交流联系首先下载GraalVM25, 两种较为优雅的方式 下载1. 官网下载地址2. 利用Idea便捷下载流程是从idea左上角打开项目结构面板,点击左栏项目设置中的项目,选择JDK,点击下载JDK,选择一款GraalVM下载即可个人追求简单优雅, ...
PC端自动化测试实战教程-8-pywinauto操作应用程序窗口的控件(详细教程)
1.简介 前边的几篇文章,宏哥依次介绍了环境的搭建、启动应用程序、操作应用程序窗口以及等待的各种方法和实践。今天跟随宏哥一起来看下应用程序窗口的控件怎么操作呢???其实这个知识点前边已经有所涉及,只不过是一带而过,没有展开详细介绍。今天就来讲解和分享一下。PC端的应用程序的操作都是基于控件操作,如果 ...
NIVIDIA高性能计算CUDA笔记(二)—cuBLAS库简介
cuBLAS 是NIVIDIA提供的GPU加速线性代数库,基于CUDA实现BLAS(基本线性代数子程序),广泛应用于科学计算、机器学习、工程仿真等领域。本笔记调研cuBLAS库的基本情况,将详细介绍产品的功能、算子列表及API列表,以及cublas实现矩阵乘法的案例。 ...
探秘 AgentRun|流量一大就瘫痪?如何解决AI 模型调用之痛
阿里云函数计算 AgentRun 全新发布后,我们整理了“探秘 AgentRun”系列文章,本系列将梳理企业落地Agent 常见难题,给出具体解法,助力 Agentic AI 快速走进生产级环境。欢迎加入“函数计算 AgentRun 客户群”与我们交流,钉钉群号:134570017218。 在《通过 ...


