【问题标题】:Multiple API calls in dotnet coredotnet 核心中的多个 API 调用
【发布时间】:2021-05-31 18:12:14
【问题描述】:

我正在使用 dotnet core c#。在这里,我需要根据我发送电子邮件或 SMS 调用多个 API。 PFB 结构。

function SendEmailOrSMS(){
    List user = new List;
    callAPI1(userid) --> to get email id or phone number
    callAPI2(response of API 1) --> to trigger sms
    UpdateResponse() --> DB function
}

对于每个用户,我都必须调用此方法和 API 来触发 SMS 或电子邮件。 现在对于 1000 个用户,需要 15 分钟。我需要为 350 万用户触发。

如果我有 1000 个用户,则触发电子邮件或 SMS 需要将近一个月的时间,而我需要在一天内触发。

提前感谢您的帮助。

【问题讨论】:

  • 你能告诉我们PFB是什么吗?
  • 请在下面找到
  • 您应该检查您正在使用的 API 是否有可以使用的批量方法。否则,您应该并行提交多个请求,同时考虑 API 的任何使用或速率限制。
  • 如何并行提交多个请求
  • 稍后您的请求将受到这么多请求的限制。

标签: c# api email .net-core sms


【解决方案1】:

API1 或 API2 是否公开批处理方法?如果是这样,您将不需要调用它 n 次,而只需调用一次(或多次,但仍不是 n 次)。

无论如何,这个处理可以在不同的线程中并行完成。这可以通过使用Parallel.ForEach() 方法来实现,也可以通过自己管理Tasks 来实现。 (后者是一种比较棘手的方法,但可以更灵活地定制。)这样可以同时处理多个用户,因此处理时间会大大减少。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2022-01-12
  • 2021-09-02
  • 2016-11-22
  • 2017-03-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-01-03
相关资源
最近更新 更多