我正在创建一个创建随机测试数据的网站,其中一部分是随机名称生成器,我想扩展以创建大约一百万个名称。 (用.net 4.5 - C#编写)
我最初的解决方案是在Web服务器线程上创建名称,这显然是一个坏主意并且非常慢。这已慢慢演变为具有离线批处理器的解决方案,该处理器使用预编译的名称填充Azure表,然后由Web服务器(或执行最终数据编译的辅助角色)下载
然而,这似乎也很慢,即使使用并行进程运行,下载数据也需要几分钟。
所以我正在寻找最好的架构以加快速度。
我考虑过具有执行此处理的辅助角色,并将结果保存在内存中并等待Web服务器请求它们。但是,我不确定这是最好的方法,还是它甚至可以解决问题! (主要是因为我不知道如何传输数据)
因此,我希望提供一些建筑建议,以最佳方式提供这些数据。我不确定是否只需要几分钟的时间就可以了进程那么多记录。
(另外补充)
代码在Azure Web实例上运行,从同一区域的Azure存储表中提取数据。
我已对该应用进行了分析,大部分时间都花在从表中下载数据上。
随机名称生成器所来自的数据是另一个Azure表中的几十万个记录。
我现在想知道我是否可能会提出错误的问题!也许更简单的问题是,给出几十万个名字/姓氏的来源,最好的方法是编译其中的百万个以进入网络查询
P.S。我不是一个c#家伙(更多的是一个系统管理员)我的c#通常遵循脚本小子的方法,在网上找到一些模糊的接近和同化的东西 - 在这种情况下我无法找到任何模糊的东西。 (这让我觉得我错过了一些明显的东西)