Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 重试调用外部服务_C#_Api_Azure_Web Services_Hangfire - Fatal编程技术网

C# 重试调用外部服务

C# 重试调用外部服务,c#,api,azure,web-services,hangfire,C#,Api,Azure,Web Services,Hangfire,我正在从我的服务器呼叫外部服务,我需要将坐标数据(从移动应用程序发送)发送到该服务并取回收据。这项服务经常中断一段时间。重试发送数据(在相当长的一段时间后:比如说间隔1小时)并确保没有重复是一种好的做法。 谢谢。如果服务请求失败,您可以在移动应用的LocalDB中保留坐标,并在间隔后尝试从LocalDB发送坐标,如果可以成功发送,则删除坐标。如果服务请求失败,您可以在移动应用的LocalDB中保留坐标,并尝试在间隔后从LocalDB发送坐标,如果可以成功发送,则删除坐标。Polly库可能是最佳选

我正在从我的服务器呼叫外部服务,我需要将坐标数据(从移动应用程序发送)发送到该服务并取回收据。这项服务经常中断一段时间。重试发送数据(在相当长的一段时间后:比如说间隔1小时)并确保没有重复是一种好的做法。

谢谢。

如果服务请求失败,您可以在移动应用的LocalDB中保留坐标,并在间隔后尝试从LocalDB发送坐标,如果可以成功发送,则删除坐标。

如果服务请求失败,您可以在移动应用的LocalDB中保留坐标,并尝试在间隔后从LocalDB发送坐标,如果可以成功发送,则删除坐标。

Polly库可能是最佳选择


波利图书馆可能是你最好的选择


在这方面,Polly是一个很好的库,但是Polly抽象了许多对不同场景有用的设计模式。在您的情况下,您可以使用polly,专门查找“断路器”和“重试”模式。为了获得最佳重试策略,请在重试中封装断路器

Polly在这方面是一个很好的库,但是Polly抽象了许多对不同场景有用的设计模式。在您的情况下,您可以使用polly,专门查找“断路器”和“重试”模式。为了获得最佳重试策略,请在重试中封装断路器

可能重复的尝试抱歉-我没有正确阅读此内容。我仍然会使用类似于Polly的东西,但看起来你需要一个工作队列。每个作业都有一个状态来保存是否已发送的信息。我会把它保存在try-sorry的可能副本中-我没有正确阅读。我仍然会使用类似于Polly的东西,但看起来你需要一个工作队列。每个作业都有一个状态来保存是否已发送的信息。我会坚持这一点在数据库中谢谢似乎Polly是我需要的谢谢似乎Polly是我需要的谢谢我会看一看PollyTanks我会看一看Polly实际上用户有时不会在他们的手机上打开wifi/4G,我们很快就需要数据,所以我们需要将数据从服务器发送到服务用户有时他们的手机上没有打开wifi/4G,我们很快就需要数据,因此我们需要将数据从服务器发送到服务