Implementowanie wykonywania równoległego i współbieżności

Optymalizacja wykonywania przepływu pracy ma kluczowe znaczenie dla wydajności i produktywności. Power Automate oferuje niezawodne funkcje wykonywania równoległego i współbieżności, umożliwiając jednoczesne uruchamianie wielu akcji i znaczne skrócenie czasu wykonywania.

Wykonywanie równoległe

Power Automate Obsługuje wykonywanie równoległe, umożliwiając przepływom jednoczesne uruchamianie co najmniej dwóch kroków. Przepływ pracy jest kontynuowany dopiero po wykonaniu wszystkich równoległych kroków. Ta funkcja umożliwia wydajniejsze przetwarzanie, szczególnie w przypadku zadań asynchronicznych.

Jednoczesne uruchamianie wielu akcji skraca ogólny czas wykonywania przepływu. Wykonywanie równoległe jest przydatne w przypadku zadań, które nie są od siebie zależne i mogą być przetwarzane niezależnie.

Odgałęzienia równoległe

Użyj gałęzi równoległych dla akcji, których wykonanie trwa dłużej niż 5 sekund. Takie podejście optymalizuje wydajność przepływu bez obciążania systemu.

Zrzut ekranu przedstawiający przepływ w chmurze z równoległymi gałęziami.

Przypadki użycia gałęzi równoległych:

  • Wysyłanie nieblokujących żądań zatwierdzenia: użyj gałęzi równoległych, aby wysyłać żądania zatwierdzenia, które nie blokują innych akcji.
  • Tworzenie zatwierdzeń opartych na kworum: Zaimplementuj procesy zatwierdzania oparte na kworum, w których decyzja jest podejmowana na podstawie większości odpowiedzi.
  • Tworzenie lub aktualizowanie rekordów w wielu systemach: Zapewnienie spójności danych i skrócenie czasu przetwarzania poprzez jednoczesne tworzenie lub aktualizowanie rekordów w różnych systemach.
  • Konsolidowanie danych z wielu źródeł: Pobieraj dane z różnych źródeł równolegle i konsoliduj je w jeden zestaw danych do dalszego przetwarzania.

Zmniejszanie nakładu pracy związanego z planowaniem

Prosta linia działań może być uruchamiana sekwencyjnie na platformie. Strukturyzacja równoległa pomaga lepiej zorganizować przepływ i oszczędza czas. Inicjalizacja wielu zmiennych równolegle może zaoszczędzić czas.

Ważne jest, aby zminimalizować liczbę pominiętych akcji w przepływach. Szerokie instrukcje switch z wieloma akcjami w każdej gałęzi lub gałęzie równoległe, w których rzadziej używana ścieżka ma więcej akcji, mogą negatywnie wpłynąć na czytelność i łatwość konserwacji przepływu.

Zamiast mieć wiele pominiętych akcji w gałęzi switch, wywołaj przepływy podrzędne z gałęzi switch. W ten sposób pominiesz nieistotne przepływy podrzędne, a nie dużą liczbę poszczególnych akcji. Takie podejście upraszcza główny przepływ i ułatwia jego utrzymanie.

Zmniejszenie liczby akcji w każdej gałęzi sprawia, że przepływ jest bardziej czytelny i łatwiejszy do zrozumienia. Przepływy podrzędne umożliwiają niezależne zarządzanie określonymi częściami workflow i aktualizowanie ich, co upraszcza cały proces utrzymania.

Kontrola współbieżności

Współbieżność umożliwia równoległe wykonywanie w pętli Zastosuj do każdego. Domyślnie Zastosuj do każdego pętle są wykonywane sekwencyjnie, co może zająć dużo czasu podczas przetwarzania dużych danych. Jeśli elementy w pętli nie muszą być uruchamiane sekwencyjnie, współbieżność umożliwia przetwarzanie X elementów jednocześnie. Użytkownicy mogą ustawić stopień równoległości od 1 do 50.

Rozważmy scenariusz, w którym pole stanu 100 rekordów musi zostać zaktualizowane. Zamiast aktualizować jeden rekord po drugim, kontrola współbieżności umożliwia jednoczesne aktualizowanie do 50 rekordów.

Należy pamiętać o stopniu równoległości do ustawienia:

  • Istnieje obciążenie związane z dzieleniem pracy, kolejkowaniem dodatkowych wątków i opóźnieniami z wywoływanego punktu końcowego.
  • Duża liczba (na przykład 50) niekoniecznie musi sprawić, że wszystko pójdzie szybciej.

Zrzut ekranu przedstawiający konfigurowanie kontroli współbieżności w akcji Zastosuj do każdej.

Niektóre inne rzeczywiste scenariusze, w których to podejście może mieć zastosowanie:

  • Wysyłanie pojedynczych e-maili do wielu odbiorców
  • Aktualizowanie istniejących rekordów w Dataverse, SharePoint, listach, SQL
  • Zbiorcze tworzenie użytkowników w Microsoft Entra ID
  • Tworzenie równoległych zatwierdzeń

Poniżej przedstawiono porównanie wpływu kontroli współbieżności na przetwarzanie tablicy w pętli Dla każdej .

Długość tablicy Stopień równoległości Czas wykonania pętli
4 ​ Wył. 21 sekund ​
4 ​ 2 11 sekund ​
4 ​ 4 6 sekund ​
4 ​ 6 6 sekund ​

Kontrolki współbieżności dla akcji Zastosuj do każdego są stosowane tylko na najwyższym poziomie w przepływie w chmurze. Kiedy zagnieżdżasz akcje Zastosuj do każdego, akcje wewnętrzne zawsze wykonują się szeregowo.