Udostępnij za pośrednictwem


Przepływ pracy generujący dużą liczbę zadań systemowych i dzienników

Ten artykuł zawiera rozwiązanie problemu polegającego na tym, że asynchroniczny przepływ pracy tworzy dużą liczbę zadań systemowych i dzienników.

Dotyczy: Microsoft Dynamics 365
Oryginalny numer KB: 4562256

Symptomy

Asynchroniczny przepływ pracy jest wywoływany szybko w krótkim czasie, generując dużą liczbę zadań systemowych. To napręża usługę asynchroniczną, powodując wzrost listy prac, którą musi przetworzyć, powodując obniżenie wydajności, które ostatecznie wpływa na wszystkie zadania systemowe. Powoduje to również wzrost rozmiaru bazy danych ze względu na dużą liczbę operacji asynchronizacyjnych i skojarzonych dzienników przepływu pracy.

Przyczyna

Po aktywowaniu i wyzwoleniu asynchronicznego przepływu pracy nowe zadania będą umieszczane w kolejce przez usługę Asynchroniczną firmy Microsoft Dynamics 365 i przetwarzane na podstawie dostępnych zasobów.

W pewnych okolicznościach asynchroniczny przepływ pracy może zostać wywołany kilka razy szybko, co spowoduje utworzenie dużej liczby zadań systemowych w krótkim okresie. Dzieje się tak ze względu na operację zbiorczą, która wyzwala przepływ pracy agresywnie lub błędną logikę w ramach innego przepływu pracy i/lub wtyczki, która wywołuje go z wysoką częstotliwością.

Zasoby dostępne dla usługi asynchronicznej są ograniczone, a jeśli lista prac zostanie wypełniona przez taki przepływ pracy, obniżenie wydajności, które zasadniczo wpływa na wszystkie zadania systemowe, jest powszechne. Ponadto ze względu na dużą liczbę zadań wygenerowanych w takim scenariuszu rozmiar bazy danych również wzrośnie.

Rozwiązanie

W takich przypadkach asynchroniczna infrastruktura przepływu pracy jest w stanie samodzielnie wyleczyć się do pewnego stopnia po dezaktywowaniu zidentyfikowanego przepływu pracy. Poniżej przedstawiono kroki umożliwiające osiągnięcie tego celu:

  1. Przejdź do obszaru Ustawienia>Procesy i wybierz odpowiedni przepływ pracy. Alternatywnie znajdź przepływ pracy przy użyciu funkcji Znajdowanie zaawansowane.
  2. Po wybraniu wybierz pozycję Dezaktywuj , aby wyłączyć i ustawić przepływ pracy na stan Wersja robocza . Opcjonalnie, jeśli nie jest to konieczne, możesz również usunąć przepływ pracy w tym momencie.

Po wykonaniu powyższych kroków nowe zadania nie będą już tworzone. Ponadto wszystkie zadania, które zostały już utworzone i umieszczone w kolejce asynchronicznej przed dezaktywacją, ale nie zostały jeszcze odebrane do przetworzenia , zostaną natychmiast anulowane po odebraniu ich do przetworzenia. Pomoże to szybciej opróżnić listę prac asynchroniczną.

Pozostałe zadania, które są już w toku , pozostaną nienaruszone i zostaną ukończone zgodnie z oczekiwaniami. Zaległości będą stale spływać w okresie czasu, aby odzyskać z powrotem do nominalnego poziomu.