Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.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# 具有超时和使用RabbitMQ重新发送的多线程RPC_C#_Mapreduce_Rabbitmq - Fatal编程技术网

C# 具有超时和使用RabbitMQ重新发送的多线程RPC

C# 具有超时和使用RabbitMQ重新发送的多线程RPC,c#,mapreduce,rabbitmq,C#,Mapreduce,Rabbitmq,我想做的是一个Map/Reduce系统,它使用RabbitMQ作为工作代理之间的传输,这是为了实现一个简单的扩展路线图,同时也为开发和测试提供一个单一的服务器实现 我看过一些关于使用RPC和RabbitMQ的单个超时消息的文章,但这些似乎是阻塞的。我需要能够发出一批请求,每个请求都可能由不同的代理提供。然后,我需要能够整理所有的回答,这样我才能勉强找到一个答案 如果我使用RPC,我相信最终会得到非常复杂的任务串行处理,而不是并行处理 我还希望能够在某些情况下重新发送请求,例如代理报告暂时错误,但

我想做的是一个Map/Reduce系统,它使用RabbitMQ作为工作代理之间的传输,这是为了实现一个简单的扩展路线图,同时也为开发和测试提供一个单一的服务器实现

我看过一些关于使用RPC和RabbitMQ的单个超时消息的文章,但这些似乎是阻塞的。我需要能够发出一批请求,每个请求都可能由不同的代理提供。然后,我需要能够整理所有的回答,这样我才能勉强找到一个答案

如果我使用RPC,我相信最终会得到非常复杂的任务串行处理,而不是并行处理

我还希望能够在某些情况下重新发送请求,例如代理报告暂时错误,但这不是必需的

我猜我需要在主应用程序中生成线程,每个线程都有一个RPC调用,但由于它是一个web应用程序,并且可能有20个任务需要代理服务,因此我对这种方法不感兴趣,并怀疑它会很快成为瓶颈