专题:工程实践
共14篇相关文章

如何用ASP.NET Core和EF Core打造灵活可扩展的动态分页系统?
引言 欢迎阅读,这篇文章主要面向初级开发者。 在开始之前,先问你一个问题:你做的系统,是不是每次增加一个查询条件或者排序字段,都要去请求参数对象里加一个属性,然后再跑去改 EF Core 的查询逻辑? 如果是,那这篇文章应该对你有用。我会带...

如何30分钟内用EF Core、TagWith、OpenTelemetry和执行计划定位慢查询性能瓶颈?
压测没问题,上线却慢成一大坨?这篇用 TagWith + OpenTelemetry + 执行计划,带你 30 分钟定位 EF Core 慢查询真凶。...

如何处理EF Core中乐观锁RowVersion引发的DbUpdateConcurrencyException并发冲突?
并发冲突是 EF Core 里最容易被忽视、出了事又最难排查的问题之一。这篇文章聊聊它的机制、怎么配置乐观锁、冲突异常怎么处理。 问题背景 真实场景:电商平台秒杀活动,同一件商品被多个请求并发扣减库存。业务日志里一切正常,但库存对不上——扣...

为何降低对话轮数,力求一次性阐明需求?
在使用 Cursor、ChatGPT 等 AI 编程工具的过程中,我逐渐意识到:
相比多轮对话不断修补需求,用更少的对话轮次一次性描述清楚核心需求,
反而更容易得到符合预期的实现。
本文结合实...

小容量32单片机也上bootloader?拆机烧录的苦,你敢尝试吗?
基于表驱动构造的插件机制,实现单片机上的bootloader,主要是对通信,协议以及boot过程进行了插件化改造...

按键动作模式识别,贝叶斯能否派上用场?
首发于21ic论坛 前言 之前学习了贝叶斯更新的相关内容,正好现在也在玩开发板,板子上面有几个小的单击按键,一般识别按键动作的做法就很简单,不是中断就是查询,基本都是靠边沿或者电平的状态来进行的,这一套就很无聊,没有实现的欲望,所以想用点不...

ASP.NET Core JWT、Policy与权限边界如何具体落地实现?
这篇文章不讨论完整身份平台建设,只聚焦 ASP.NET Core 里最常见、也最容易出错的一段:JWT 认证、Policy 授权,以及资源级权限边界该怎么落到代码里。 问题背景 真实现场:一个后台退款接口原本只允许财务角色调用,但线上排查发...

如何从EF Core ChangeTracker到SQL Batch全链路深度剖析性能瓶颈并优化?
这篇文章讨论一个问题:一次写入请求从实体变更到数据库落盘,中间到底发生了什么,哪里最容易慢,以及应该怎么定位。 问题背景 真实场景:订单系统在白天吞吐稳定,凌晨高峰出现周期性尖峰。接口平均耗时变化不大,但 P95 从 80ms 抬到 420...

如何将Git中停止跟踪已提交文件同时保留本地文件?
本文记录一次误将文件提交到远程仓库后,如何在本地保留文件的前提下,彻底从 git 跟踪和远程仓库中移除。 有一个文件 123.txt 被我不小心提交并推送到远程了,我想让这个文件不再被 git 跟踪了,但是不要从本地目录中删除。 我知道,如...

如何通过Git模糊搜索分支名并创建本地跟踪分支?
本文介绍在只记得远程分支名片段(如“246”)时的命令行流程:先 git pull 获取最新分支列表,后用 git branch -a | grep '246' 模糊搜索定位远程分支,最后通过 git s...

如何在Rider中设置SonarQube配置?
SonarQube 是一个开源的代码质量管理系统,可以支持很多的开发语言。文本主要通过详细的操作步骤演示如何在 rider 中引入代码扫描,通过 SonarQube 自建服务,统一团队代码风格...

ASP.NET Core 请求管线性能与可观测性实战,为,如何优化?
很多团队做性能优化时,第一反应是改 SQL、加缓存、扩机器。结果接口还是慢,而且慢得不稳定。 这类问题里,有一部分根因并不在业务代码,而在请求进入业务之前就已经产生了: 中间件顺序、重复序列化、过重日志、异常处理位置不当,都会把每个请求的固...

EF Core中Include、投影与跟踪策略的边界如何界定,是查询性能黑洞的根源吗?
很多团队把 EF Core 的性能问题归因于“ORM 天生慢”,但线上真实情况通常是: 查询写法对 SQL 形态不敏感 默认跟踪被滥用 图省事一次 Include 到底 结果是接口能跑,但高峰时段 P95 持续抬高,数据库 CPU 和网络带...

您的问题似乎不完整,您是想询问关于C语言编程的某个具体问题吗?比如C语言的语法、编程技巧、项目开发等。请提供更具体的信息,这样我才能给出更准确的回答。
接口慢,不一定是数据库慢。很多系统在高峰期的核心问题,是异步链路写法导致线程池被慢慢耗空。 这类问题最麻烦的地方在于: CPU 不一定打满 错误日志不一定明显 本地压测可能复现不出来 这篇文章围绕一个目标展开:让异步代码在高并发下“稳态运行...
