首页 > 解决方案 > 使用并发访问相同的 API 以同时获取不同的数字?

问题描述

我创建了一个 Web API 来生成一个序列号,每次 API 命中它都会生成一个序列号。现在,我需要让多个用户同时使用它,这样当多个用户同时访问该 API 时,该 API 每次都会生成不同的数字。

标签: asp.net-coreasp.net-web-apiconcurrencyrate-limiting

解决方案


这在很大程度上取决于您要做什么以及出于什么原因。在可以有多个用户同时访问该端点的环境中,生成唯一的序列号非常困难。

如果您试图给他们一个 ID 用于某种数据插入,那么我建议您不要提供整数。而是提供 GUID。

基于这种机制插入数据的问题是,有时由于各种原因实际上没有插入数据。用户改变主意,最终请求另一个 ID,或者随后的调用完全失败,因此您最终会在数据中留下漏洞。

而是向他们提供 GUID,如果呼叫最终进来,则使用它。


推荐阅读