2026年03月16日
平时在工作中,总是听到sync-over-async这个词,只知道它是指在一个sync函数中调用async函数并等待结果,可能会导致thread starvation,但是不知道为什么。今天抽空...
阅读更多
2025年08月06日
最近看同事的代码,发现他用了一种非常简单的实时统计超高频请求的算法,在此记录一下。
具体的需求是,在一个Web API中,实时统计超高频请求——即数量远超于其他所有请求的请求。当超高频请求的数...
阅读更多
2025年07月08日
对于一个Web API,限流(throttling)是一个很重要的组件,主要有两个作用:
限制总体流量,从而保护Web API本身以及底层的组件。
限制每个用户的流量,从而避免一个用户...
阅读更多
2025年06月09日
我们组有一个服务是作为Windows Service部署的,在服务崩溃后,希望能够借助Windows系统的一些机制来自动重启。最近对这个问题进行了一点研究,在此记录一下。
设置服务的Start...
阅读更多
2024年12月20日
在.NET Core自带的依赖注入框架中,依赖的生命周期有三种:
Singleton
Scoped
Transient
Singleton和Transient都比较好理解,Sc...
阅读更多
2024年06月12日
最近在工作中碰到一个问题,使用.NET的HttpClient发送请求时,发现延迟特别高。这里的延迟指的是从请求发出到收到响应的时间。
导致高延迟的原因可能有多种:
服务器端的处理时间比较...
阅读更多
2024年03月02日
设置用户名和邮箱
git config --global user.name "Your Name"
git config --global user.email "your.email@ex...
阅读更多
2024年02月02日
最近在写代码的时候,GitHub Copilot提示的代码中使用了LINQ的Aggregate方法,以前没用过,所以研究了一下。
Aggregate方法的用处
我们从一个例子来看Aggreg...
阅读更多