我需要每晚处理大量数据。 我有一个半可信任的PC网络,内部网 - 没有外部网络,主要是台式机 - 但也有一些服务器。
我最初的想法是使用桌面的空闲时间,加上一些专用服务器资源,如下所示:
1)将数据捆绑成加密的20兆字节块(管理员不希望任何数据写入pc磁盘,必须保留在RAM中)
2)分发包含要执行的处理的.net dll(处理经常变化,因此dll的分布)
3)解密数据
4)执行dll方法
5)返回结果
服务器将监视工作单元/作业,并且在一段时间X之后,如果没有收到结果 - 检查应该处理它们的机器的状态,并在需要时分配给另一台机器。
我不会将工作分类为CPU密集型 - 但是可以更快地检查整个数据库的并行元素是一个真正的奖励。
我认为我不需要跨机器通信,只需要客户端服务器。我很高兴客户只需轮询服务器 - 我不需要任何复杂的工作通知方式。
我的问题是:是否有任何.NET框架可以做这种事情?或者这种方法是否完全有缺陷?