【发布时间】:2019-07-19 01:26:37
【问题描述】:
我是分布式计算和orleans的新手,最近做了一些研究,不确定orleans是否可以用于新任务。
这个任务是,有很多项目属于不同的人,每个项目都有很多数据。对于每个项目,步骤如下:
- 通过计算原始数据获取新数据。原始数据存储在分布式数据库中,然后将新数据存储回数据库。 MQ 或 Redis 可用于提高性能。
- 根据新数据计算汇总值并将汇总值保存回数据库。
我的问题是:
- 服务器/Grain 负载平衡: 没有唯一 ID 的 Grans。最好在所有服务器上运行多个grain进行负载均衡,每个grain只是从数据库中获取数据并进行计算,不需要创建一个id的实例。对于奥尔良来说,除了无状态的grain外,不允许没有唯一id的grain,无状态的grain只是在本地运行。
- 长期计算:计算和总结可能需要几秒或几分钟才能完成,是否推荐使用grains?文档中似乎不推荐。
- 顺序执行:需要先从原始数据中计算出新值,然后再根据新值进行汇总。这意味着必须在所有要计算的grains完成后运行汇总grains。
- 数据缓存: Grains 通过本地网络从数据库中获取数据并保存到数据库中,对于 orleans 有什么减少数据传输的建议吗?
【问题讨论】:
标签: .net distributed computation orleans