自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 收藏
  • 关注

原创 Satori GC:同时做到高吞吐、低延时和低内存占用

它会退出私有状态,转入更全局的 GC 流程。如果当前 Region 快没空间了,Satori 的第一反应也不是立刻说“这块用完了,交给全局 GC,再去拿一块新的”。一旦某个对象逃逸,Satori 不只会记住这个对象本身,还会沿着这个对象在当前 Region 里的引用,把仍然因此对外可达的对象也一并纳入考虑。如果请求结束后,这些对象都没有被放进全局缓存,也没有被交给别的线程,那么当这个 Region 空间变紧时,线程 A 完全可以先做一次局部回收,把这批短命垃圾清掉,然后继续在原 Region 里分配。

2026-04-05 13:39:17 379

原创 Maomi.Core | 一个好用的模块化和自动服务注册框架

在使用/// 初始化配置./// 注册服务时要过滤的类型或接口,这些类型不会被注册到容器中./// 自定义要注册的程序集.在自动服务注册时,框架会自动忽略把 IDisposable、ICloneable 这里没意义的接口注册到容器中,读者也可以添加一些过滤接口。例如对于 MyService 服务,实现了 IMyService、IDisposable 两个接口。如果开发者需要动态引入程序集,不使用模块类强引用时,可以使用。});aaa.dll 里面需要有模块类。

2026-04-05 13:38:38 378

原创 Gin 框架中的规范响应格式设计与实现

仅仅处理正常的业务响应是不够的,我们还需要统一拦截异常进行处理,否则异常和未注册路由都不会返回我们需要的格式。无论是在成功响应还是错误响应中,客户端收到的都是相同格式的JSON数据,极大地提升了开发体验。让我们从最基础的响应结构开始。有了基础结构后,我们可以构建一个响应处理工具类。这样,当用户请求不存在的接口时,也会收到格式统一的响应。首先,让我们思考一个问题:为什么要统一API响应格式?之类的内容,可以根据实际需求来修改。

2026-04-04 13:32:17 252

原创 C 里面如何使用链表 list

杂技, 理解的心智负担稍微高一点, 但使用上对方有了单元测试, 比较成熟, list 结构问题较少, 除了业务的内存错位自己 debug 稍微麻烦点.类似上面这样, 需要什么依赖 next 指针来回调整, 然后手工 print F5 去 debug 熬.// list_delete(list, fide);// delete list [可选]需要 list , 还是直接 next 指针来回调整.// $LIST 需要嵌入 struct 的第一行。// list.h 似魔鬼的步伐, 单链表库。

2026-04-04 13:31:36 347

原创 我的模型我做主:在 Kaggle 上用 Unsloth 极速微调 Qwen3

我们不需要自己去写 BitsAndBytesConfig,这也是咱们选择unsloth的一个原因,轻便好用,哈哈哈。我们的数据量和批次都设定的比较小,所以跑下来很快,大概3分钟左右就可以微调完毕,之后各位友人可以在huggingface或者modelscope找一些客服。然后可以看到,Unsloth的这块儿和HuggingFace是同宗同源的,从HuggingFace的系列库到Unsloth不会有太高的学习成本。在开始之前,稍微花上那么一丢丢的时间,咱们来了解一下微调的"家谱"。:零代码、可视化微调工坊。

2026-04-03 13:52:04 374

原创 python-langchain框架(1-12 返回json-格式解析器)

【代码】python-langchain框架(1-12 返回json-格式解析器)

2026-04-03 13:51:04 241

原创 【EF Core】实体状态与变更追踪

调用 DetectChanges 方法会触发实体的追踪扫描,方法只负责触发状态检查,不返回任何结果,调用后实体的状态自动更新。然后在特定条件下,会触发比较,即比较实体引用当前各属性的值与当初快照中的值,从而确定实体的状态。再往后,咱们 foreach 语句给 DbSet 会触发 EF Core 去查询数据库,于是,我们看到,控制台在“数据库中的记录:”一行之后又发生了 Tracked 事件,有一个 ID=1 的实体被追踪了,它刚从数据库中查询出来,就是第二块绿色字体那里。同样的道理,一般也是一对一的关系。

2026-04-02 14:10:14 317

原创 最近关于运维的一些感想

"我解释说,"平均响应时间从200ms降到150ms,虽然看起来微不足道,但对用户来说,每秒的体验提升都可能带来更高的留存率。当产品经理告诉我这个优化带来了2%的用户留存率提升时,我真正体会到了运维的价值——不只是技术上的优化,更是业务上的价值。我们不再是简单的"救火队员",而是系统稳定性的守护者,是用户体验的保障者,是业务价值的贡献者。这意味着,运维工程师需要从"解决问题"的角色,转变为"价值创造"的角色。随着云计算的普及,运维的挑战也在升级。我曾以为运维就是"救火",现在我明白,真正的运维是"防火"。

2026-04-02 14:09:22 197

原创 记一次 .NET 某MES上位机拍照系统 内存暴涨分析

这是训练营里的一位朋友找到我的,说他们的系统会有偶发的内存暴涨情况,自己也没分析出来,让我帮忙看下怎么回事,拿了一个。的dump文件,这文件是够大的,我个人建议一般是不超过10G,不然的话windbg分析起来很吃力。从卦象看,真尼玛坑爹呀,halcon的释放居然还要和某一个窗口通讯,即底层的。区域,也就是终结器线程提取数据的地方,可以看到此时这个小节里积压了。,既然占了一半多的提交内存,看样子要从托管堆入手了。的数据,也就表明此时的终结器线程应该出了问题。看托管内存的占用,可以借助强大的。

2026-04-01 14:50:32 46

原创 Gorse 推荐系统入门:从零到一构建推荐引擎

【代码】Gorse 推荐系统入门:从零到一构建推荐引擎。

2026-04-01 14:49:56 242

原创 中英文术语对照表

其实,把assembly翻译为“程序集”并不是很贴切,毕竟,assembly是一个很抽象的东西,而“程序集”又是那么的具体。但是,“程序集”这个翻译我们已经口头流传了很多年,突然改口委实很不习惯,所以,本书沿袭原有翻译,不再另辟蹊径。这个词,说白了,就是取消引用,并得到该引用,有点像Stack中的出栈操作,不是直接就出栈,还要返回出栈的对象(Push方法返回值类型为Object而不是void)。翻译为“编辑-继续”,表示 用户可以在调试过程中根据调试结果立即修改代码,继续执行程序而无需停止调试。

2026-03-31 15:12:13 360

原创 快速搞懂 ASP.NET MVC

等杂七杂八的功能,全部写在 Code-Behind (aspx.cs) 里的旧习惯。至于 Model 2,即俗称的 MVC Pattern,则加入了 Controller 的部分,将流程及事件交由中心控管,除了可让整个系统的运作流程更为明确,有效切开各层的工作,亦可避免让 View 里的 Code-Behind 去处理 Model 中的数据库访问、商业逻辑运算,也不必再每个页面重复撰写「流程传递和转向」的代码,而改由中央的 Controller 程序代码 (action method) 来统一控管。

2026-03-31 15:10:54 372

原创 RAG 入门-LangChain读取PDF

本文将介绍 4 种主流的 PDF 处理方案,从简单到复杂,从快速到智能,可根据自己的实际使用场景,选择合适的方案。

2026-03-30 15:04:17 334

原创 AI基于Spec开发是巨坑?

还有一点没有记录下来的:由于上下文腐烂,所以测试结果报告是让AI“回忆”自己干到哪里的最省Tokens的线索。

2026-03-30 15:03:43 326

原创 】HTB Season10 WingData 全过程wp

得到一个ftp.wingdata.htb,也将这个加上。通过搜寻cve是 CVE-2025-47812。复制这个恶意的tar文件到sudo权限的目录下。下的wacky.xml获得用户加密凭据。我们利用这个脚本生成tar文件。然后运行这个sudo脚本。先sudo -l看一下。可以看到有一个py脚本。得到user.txt。

2026-03-29 15:25:14 45

原创 [拆解LangChain执行引擎]非常规Pending Write的持久化

如上面的代码片段所示,我们为Pregel提供了两个并行执行的节点foo和bar,其中bar对应的函数并未执行任何有效操作,也没有任何的输出。针对第一个中断的恢复调用后,节点foo停在第二个中断处,此时Checkpointer会创建两个新的Pending Write持久化我们提供的Resume Value(“1st resume”),它的Channel名称就是。我们先来模拟出错的场景,如下面的代码片段所示,我们执行的Pregel对象具有一个唯一的Node,它的处理函数直接抛出一个异常。

2026-03-29 15:24:27 311

原创 AI开发-python-langchain框架

【代码】AI开发-python-langchain框架。

2026-03-28 15:07:17 196

原创 Seata实现分布式事务:大白话全剖析(核心讲透AT模式)

几乎无业务侵入:只需要在事务入口加注解,业务代码一行不用改,开发成本极低;性能极高:第一阶段就提交本地事务、释放锁,解决了原生2PC的性能瓶颈,接近本地事务的性能;自动回滚补偿:基于undo log自动完成回滚,不用像TCC那样手动写补偿代码;适配高并发:无长期锁、轻量提交,完美适配互联网电商、支付等高并发场景。Seata之所以能成为Java微服务分布式事务的首选,核心是它解决了传统分布式事务方案的痛点统一协调。

2026-03-28 15:06:34 218

原创 OpenCode和oh-my-opencode是什么

opencode的全局配置文件,在windows上位于如下位置:C:\Users\用户\.config\opencode默认配置如下,仅包含一个插件:配置 |OpenCode。

2026-03-27 14:01:13 243

原创 NavicatPassword 的技术实现与架构解析

一旦用户忘记密码,常规方式只能重新配置连接,效率极低。Navicat的密码加密采用固定的Key和IV,这是解密的关键。项目的核心解密代码如下,且完全基于.NET原生。,后续无论是修改界面样式,还是优化解密算法,都无需改动其他层的代码,可维护性和扩展性大幅提升。项目严格遵循MVVM架构模式,代码目录结构与职责划分清晰,核心目录如下(对应项目。Navicat的数据库连接密码并非明文存储,而是通过AES算法加密后写入。节点的属性和子节点值,并自动调用解密方法生成明文密码,最终封装为。文件是XML格式,核心是。

2026-03-27 13:59:39 386

原创 神经推理的蜕变:从概率解码到 DeepSeek V3.2 的理性智能体架构演进

这大概就是我们决定深入研究 Codex SDK 事件流机制的原因——毕竟,只有理解了底层消息是怎么运作的,才能构建出真正企业级的 AI 执行平台。在开发过程中,我们需要构建可靠的 AI 执行服务来处理用户的代码执行请求,这正是我们引入 Codex SDK 的直接原因。其实,在构建基于 Codex SDK 的 AI 执行服务时,我们不得不面对这样一个问题:如何处理 Codex 返回的那些流式事件消息。理解这些事件类型并正确解析它们,对于实现功能完善的 AI 执行器来说,还是挺重要的。

2026-03-26 15:23:23 349

原创 Avalonia UI的演进逻辑与Qt生态深度对比

1] 递归求得,因此我们可以不断回跳,求出所有的 Border 后,周期就是 n - Border。π 数组求出所有的 Border ,再根据这些 Border 就可以构造出所有的周期串了。j = pi[j - 1] # 继续匹配可能重叠的下一处。j = pi[i - 1] # 取前一个的位置的pi。if s[i] == s[j]: # 情况A。=t[j] ,我们需要一个更短的相等前后缀。s 自身也是周期,然后每个周期串就是 s[:b[i]]。i] 中,最长的相等真前后缀的长度。

2026-03-26 15:13:11 193

原创 [拆解LangChain执行引擎] ManagedValue——一种特殊的只读虚拟通道

我们一直在强调Pregel对象的状态是通过Channel维护和传递的,其实承载传递状态功能的组件除了Channel,还有。我们可以将ManagedValue视为虚拟Channel,Node不仅采用与读取Channel完全一样的方式读取ManagedValue,而且注册的ManagedValue也直接存放在Pregel的channels字段中。如果我们仔细查看Pregel类的定义,可以看出其channels字段返回一个字典,字典的值的类型联合了BaseChannel和。

2026-03-25 14:54:09 171

原创 “Fatal error: require(): Failed opening required...” 以及如何彻底避免它再次出现

把include和require用好,不只是语法问题,而是工程能力问题。你的代码运行在操作系统、权限模型、缓存机制和部署流水线共同构成的环境里。只理解“本地能跑”,远远不够。

2026-03-25 14:53:28 171

原创 如何让你的系统抗住高并发的流量?

如何能让系统抗住高并发流量,要考虑的因素有很多,但是真的让你讲一下都有哪些,很多人肯定就会说,用Redis缓存啦,用MQ做解耦啦,总之就是想起来这一块儿就说一嘴,想起来那一块儿也说一嘴,总之就是说的不能成体系一些。一般面试官问这种问题的时候,是想看你怎么回答,有没有从架构的思想去思考这个问题,就算有一些具体技术你记得可能不是很熟练了,面试官也会相信你是能够解决问题的。这一次就整体来说一下如何让你的系统抗住高并发流量。

2026-03-24 13:20:35 382

原创 【渗透测试】HTB靶场之Baby 全过程wp

本靶机核心是通过域用户凭证获取与黄金特权利用,实现从普通域用户到域管理员的权限提升。首先通过端口扫描与 LDAP 信息搜集,获取域用户及初始密码,解决密码必须修改的限制后,利用该账户的和黄金特权,备份系统核心文件(SAM、SYSTEM、NTDS.dit),解析出域管理员哈希,最终通过哈希传递登录域控制器,完成渗透。回到顶部。

2026-03-24 13:19:41 376

原创 带来 Multi Agent 开发,OpenSolon v3.8.3 发布

OpenSolon 是新一代,Java 企业级应用开发框架。。采用商用友好的 Apache 2.0 开源协议,是“杭州无耳科技有限公司”开源的根级项目,是 Java 应用开发的生态基座(可替换美国博通公司的 Spring 生态)。7年开源时间,累计代码提交1.6万次 ,近半年下载量1200万次。

2026-03-23 22:36:26 395

原创 基于Kotlin的国产开源播放器DKVideoPlayer

在Android平台上,基于FFmpeg的国产播放器开源框架也有很多了,前有哔哩哔哩的ijkplayer,后有小红书的RedPlayer,参见之前的文章《使用国产的ijkplayer播放器观看网络视频》和《使用国产的RedPlayer播放器观看网络视频》。除此以外,DKVideoPlayer也是一款优秀的国产Android视频播放器,它基于Kotlin编写,不但集成了Android原生的MediaPlayer,还集成了Jetpack的ExoPlayer,甚至集成了国产的ijkplayer。

2026-03-23 22:35:36 479

空空如也

空空如也

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

TA关注的人

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