Dotnet的可扩展性挑战

时间:2017-05-23 04:56:02

标签: c# .net

我正在创建一个模块(一个基于Dotnet的exe),使用它我应该在最短的时间内从NoSql数据库(MongoDB)中流失大量数据(1亿条记录),逻辑包括昂贵的操作,如加密,解密这是关键数据,因此我们需要非常小心。

目前基本逻辑已到位,但目前运行速度非常慢(即使用一个主线程的50条记录/ 5分钟)。现在,我想使用多线程,任务并行库,其中可能有两种方法:

  1. 使用Parallel.For:这是一种更简单的方法,代码将作为不同的线程运行。
  2. 为批次使用不同的任务:此方法具有不同的任务,具有较低的上限,使用这些上限来执行分离,因此不会产生麻烦。虽然在这种方法中仍然需要弄清楚如何正确管理一些任务失败。
  3. 但主要是在这里执行时间是燃烧的问题。这种方法可以给我更好的吞吐量?或者,如果可以使用任何其他方法?

    虽然我正在为两者建立POC,但任何指导都会有所帮助。

0 个答案:

没有答案
相关问题