使用 Logic Apps 执行并行化的三重 Foreach 需要 40 分钟?
Slow performing triple Foreach with Parallelism taking up 40 minutes with LogicApps?
我在产品的 Foreach 中有一个 Foreach 类别,运行 时间为 40 分钟。基本上,它为每个类别构建一个 HTML table,并在该类别中将产品与正确的专业化放在一起。
当前设置:
- Foreach 类别包含 5 个项目
- Foreach 产品包含 300 项
- Foreach 专业化包含 5 个项目
我已经打开并行度从 10 到 50 不等的并发控制,但性能仍然很慢。此外,当我向 Products 和 Specialization 添加并行性时,数据未正确排序。
知道如何提高性能吗?
对于这种情况,恐怕没有很好的解决方案来实现您的要求。
您提到您启用了并行度从 10 到 50 不等的“并发控制”,这导致数据未排序。恐怕您必须将“并行度”更改为 1,然后数据才会排序。但它会花费更多的时间。一种节省时间的方法是启用“Concurrency Control”并将“Degree of Parallelism”设置为第一个“”为 5 For each”循环,因为第一个“For each”循环是为每个类别构建HTML table,所以它可能不会乱了也没关系(不过也要看你的要求,你关心tables的顺序吗)。
我在产品的 Foreach 中有一个 Foreach 类别,运行 时间为 40 分钟。基本上,它为每个类别构建一个 HTML table,并在该类别中将产品与正确的专业化放在一起。
当前设置:
- Foreach 类别包含 5 个项目
- Foreach 产品包含 300 项
- Foreach 专业化包含 5 个项目
- Foreach 产品包含 300 项
我已经打开并行度从 10 到 50 不等的并发控制,但性能仍然很慢。此外,当我向 Products 和 Specialization 添加并行性时,数据未正确排序。 知道如何提高性能吗?
对于这种情况,恐怕没有很好的解决方案来实现您的要求。
您提到您启用了并行度从 10 到 50 不等的“并发控制”,这导致数据未排序。恐怕您必须将“并行度”更改为 1,然后数据才会排序。但它会花费更多的时间。一种节省时间的方法是启用“Concurrency Control”并将“Degree of Parallelism”设置为第一个“”为 5 For each”循环,因为第一个“For each”循环是为每个类别构建HTML table,所以它可能不会乱了也没关系(不过也要看你的要求,你关心tables的顺序吗)。