diff --git a/gns3server/compute/project.py b/gns3server/compute/project.py index 175d9e916..641c97e2c 100644 --- a/gns3server/compute/project.py +++ b/gns3server/compute/project.py @@ -293,9 +293,14 @@ class Project: # we need to update docker nodes when variables changes if original_variables != variables: + # Parallelize node updates for better performance + tasks = [] for node in self.nodes: if hasattr(node, "update"): - await node.update() + tasks.append(node.update()) + + if tasks: + await asyncio.gather(*tasks, return_exceptions=True) async def close(self): """