Udostępnij za pośrednictwem


Wysyłanie, odbieranie i przetwarzanie wsadowe komunikatów w usłudze Azure Logic Apps

Dotyczy: Azure Logic Apps (Zużycie + Standardowa)

Aby wysyłać i przetwarzać komunikaty razem w określony sposób jako grupy, możesz utworzyć rozwiązanie przetwarzania wsadowego. To rozwiązanie zbiera komunikaty do partii i czeka na spełnienie określonych kryteriów przed zwolnieniem i przetwarzaniem wsadowych komunikatów. Przetwarzanie wsadowe może zmniejszyć częstotliwość przetwarzania komunikatów przez aplikację logiki.

W tym przewodniku z instrukcjami pokazano, jak utworzyć rozwiązanie wsadowe przez utworzenie dwóch aplikacji logiki w ramach tej samej subskrypcji platformy Azure, regionu platformy Azure i w następującej kolejności:

  1. Aplikacja logiki "odbiornik wsadowy", która akceptuje i zbiera komunikaty do partii, dopóki określone kryteria nie zostaną spełnione w celu wydania i przetworzenia tych komunikatów. Upewnij się, że najpierw utworzysz ten odbiornik wsadowy, aby później można było wybrać miejsce docelowe partii podczas tworzenia nadawcy wsadowego.

  2. Co najmniej jedna aplikacja logiki "nadawca wsadowy", która wysyła komunikaty do wcześniej utworzonego odbiornika wsadowego.

    Nadawca wsadowy może określić unikatowy klucz, który dzieli partię docelową na podzestawy logiczne na podstawie tego klucza. Na przykład numer klienta jest unikatowym kluczem. Dzięki temu aplikacja odbiorcy może zbierać wszystkie elementy o tym samym kluczu i przetwarzać je razem.

Odbiorca partii i nadawca wsadowy muszą współużytkować tę samą subskrypcję platformy Azure i region świadczenia usługi Azure. Jeśli tak nie jest, nie możesz wybrać odbiornika wsadowego podczas tworzenia nadawcy wsadowego, ponieważ nie są one widoczne dla siebie.

Wymagania wstępne

Ograniczenia

  • Zawartość można sprawdzić tylko w partii po wydaniu, porównując wydaną zawartość ze źródłem.

  • Możesz zwolnić partię wcześniej tylko przez zmianę kryteriów wydania w odbiorniku wsadowym, który został opisany w tym przewodniku, podczas gdy wyzwalacz nadal ma partię. Jednak wyzwalacz używa zaktualizowanych kryteriów wydania dla wszystkich komunikatów, które nie są dostępne.

Tworzenie odbiornika wsadowego

Przed wysłaniem komunikatów do partii ta partia musi najpierw istnieć jako miejsce docelowe, w którym są wysyłane te komunikaty. Najpierw należy utworzyć przepływ pracy aplikacji logiki "odbiornika wsadowego", który rozpoczyna się od wyzwalacza usługi Batch. W ten sposób podczas tworzenia przepływu pracy aplikacji logiki "nadawca wsadowy" można wybrać przepływ pracy aplikacji logiki odbiornika wsadowego. Odbiornik wsadowy kontynuuje zbieranie komunikatów, dopóki określone kryteria nie zostaną spełnione w celu wydania i przetworzenia tych komunikatów. Chociaż odbiorcy wsadowi nie muszą nic wiedzieć o nadawcach wsadowych, nadawcy wsadowi muszą znać miejsce docelowe, w którym wysyłają komunikaty.

  1. W witrynie Azure Portal utwórz zasób aplikacji logiki z pustym przepływem pracy.

    W tym przykładzie jest tworzona aplikacja logiki odbiornika wsadowego i przepływ pracy o nazwie BatchReceiver.

  2. W projektancie przepływu pracy wybierz pozycję Dodaj wyzwalacz i wykonaj następujące ogólne kroki, aby dodać wyzwalacz Operacje wsadowe o nazwie Wyzwalacz usługi Batch.

  3. Ustaw następujące właściwości wyzwalacza:

    Właściwości opis
    Tryb
    (Tylko przepływy pracy użycia)
    - Wbudowane: definiowanie kryteriów wydania wewnątrz wyzwalacza wsadowego

    - Konto integracji: definiowanie wielu konfiguracji kryteriów wydania za pośrednictwem konta integracji. Za pomocą konta integracji można obsługiwać wszystkie te konfiguracje w jednym miejscu, a nie w oddzielnych zasobach aplikacji logiki.
    Nazwa partii Nazwa partii. W obszarze Przepływy pracy Zużycie ta właściwość jest wyświetlana tylko wtedy, gdy opcja Tryb jest ustawiona na Wbudowany. W tym przykładzie użyto narzędzia TestBatch.
    Kryteria wydania Kryteria, które należy spełnić przed przetworzeniem każdej partii. Domyślnie wyzwalacz wsadowy działa przy użyciu trybu wbudowanego, w którym definiuje się kryteria wydania wsadowego wewnątrz wyzwalacza wsadowego.

    - Na podstawie liczby komunikatów: zwolnij partię na podstawie liczby komunikatów zebranych przez partię.

    - Na podstawie rozmiaru: zwolnij partię na podstawie całkowitego rozmiaru w bajtach dla wszystkich komunikatów zebranych przez partię.

    - Na podstawie harmonogramu: zwolnij partię na podstawie harmonogramu cyklu, który określa interwał i częstotliwość. Opcjonalnie możesz wybrać strefę czasową i podać datę i godzinę rozpoczęcia.

    Aby użyć wszystkich określonych kryteriów, wybierz wszystkie opcje.
    Liczba komunikatów Liczba komunikatów do zebrania w partii, na przykład 10 komunikatów. Limit komunikatów wsadowych to 8000 komunikatów.
    Rozmiar partii Łączny rozmiar bajtów dla komunikatów zbieranych w partii, na przykład 10 MB. Limit rozmiaru partii wynosi 80 MB.
    Cykl Interwał i częstotliwość między wydaniami wsadowym, na przykład 10 minut. Minimalny cykl wynosi 60 sekund lub 1 minutę. Minuty ułamkowe są skutecznie zaokrąglane do 1 minuty. Opcjonalnie możesz wybrać strefę czasową i podać datę i godzinę rozpoczęcia.

    Uwaga

    Jeśli zmienisz kryteria wydania, gdy wyzwalacz nadal będzie wsadowy, ale nieoznaczone komunikaty, wyzwalacz używa zaktualizowanych kryteriów wydania do obsługi komunikatów nieposadnych.

    W tym przykładzie przedstawiono wszystkie kryteria, ale dla własnych testów wypróbuj tylko jedno kryterium:

    Zrzut ekranu przedstawia wszystkie kryteria wyzwalacza usługi Batch.

  4. Teraz dodaj co najmniej jedną akcję przetwarzającą każdą partię.

    W tym przykładzie dodaj akcję, która wysyła wiadomość e-mail po wyzwoleniu wyzwalacza wsadowego. Wyzwalacz jest uruchamiany i wysyła wiadomość e-mail, gdy partia ma 10 wiadomości, osiąga 10 MB lub po upływie 10 minut.

    1. W obszarze wyzwalacza wsadowego wybierz znak >plus (+) Dodaj akcję.

    2. Wykonaj następujące ogólne kroki, aby dodać akcję, która wysyła wiadomość e-mail na podstawie dostawcy poczty e-mail.

      Jeśli na przykład masz konto służbowe, takie jak @fabrikam.com lub , wybierz łącznik microsoft 365 Outlook@fabrikam.onmicrosoft.com. Jeśli masz konto osobiste, takie jak @outlook.com lub , wybierz łącznik Outlook.com@hotmail.com. W tym przykładzie użyto łącznika microsoft 365 Outlook.

  5. W razie potrzeby zaloguj się do swojego konta e-mail.

  6. Ustaw następujące właściwości akcji:

    • W polu Do wprowadź adres e-mail adresata. Do celów testowych możesz użyć własnego adresu e-mail.

    • Wybierz wewnątrz pola Temat , aby wyświetlić opcje listy zawartości dynamicznej (ikona błyskawica) i edytor wyrażeń (ikona funkcji). Wybierz ikonę błyskawicy, aby otworzyć listę zawartości dynamicznej, a następnie wybierz pole o nazwie Nazwa partycji.

      Zrzut ekranu przedstawiający listę zawartości dynamicznej i wybrane pole właściwości Nazwa partycji.

      Później w nadawcy wsadowym można określić unikatowy klucz partycji, który dzieli docelową partię na podzestawy logiczne, w których można wysyłać komunikaty. Każdy zestaw ma unikatową liczbę wygenerowaną przez przepływ pracy aplikacji logiki nadawcy wsadowego. Ta funkcja umożliwia używanie pojedynczej partii z wieloma podzbiorami i definiowanie każdego podzestawu o podanej nazwie.

      Ważne

      Partycja ma limit 5000 komunikatów lub 80 MB. Jeśli dowolny warunek zostanie spełniony, usługa Azure Logic Apps może zwolnić partię, nawet jeśli zdefiniowany warunek wydania nie zostanie spełniony.

    • Wybierz wewnątrz pola Treść , wybierz ikonę błyskawicy, aby otworzyć listę zawartości dynamicznej, a następnie wybierz pole Identyfikator wiadomości .

      Projektant przepływu pracy automatycznie dodaje pętlę Dla każdej pętli wokół akcji wyślij wiadomość e-mail, ponieważ ta akcja traktuje dane wyjściowe z poprzedniej akcji jako kolekcję, a nie partię.

      Poniższy przykład przedstawia okienko informacji po wybraniu pola Dla każdego tytułu w projektancie, w którym elementy wsadowe są nazwą kolekcji:

      Zrzut ekranu przedstawiający kolekcję Elementów wsadowych z poprzednimi danymi wyjściowymi operacji.

  7. Zapisz przepływ pracy. Utworzono odbiornik wsadowy.

    Ważne

    Jeśli używasz programu Visual Studio Code, przed przejściem do następnej sekcji upewnij się, że najpierw wdrożysz zasób aplikacji logiki odbiornika usługi Batch na platformie Azure. W przeciwnym razie nie można wybrać przepływu pracy aplikacji logiki odbiornika wsadowego podczas tworzenia przepływu pracy aplikacji logiki nadawcy wsadowego.

Tworzenie nadawcy wsadowego

Teraz utwórz co najmniej jeden przepływ pracy aplikacji logiki nadawcy wsadowego, który wysyła komunikaty do przepływu pracy aplikacji logiki odbiornika usługi Batch. W każdym nadawcy wsadowym należy określić odbiornik wsadowy i nazwę partii, zawartość komunikatu i inne ustawienia. Opcjonalnie możesz podać unikatowy klucz partycji, aby podzielić partię na podzestawy logiczne na potrzeby zbierania komunikatów przy użyciu tego klucza.

  • Upewnij się, że wcześniej utworzono i wdrożono odbiornik partii, więc podczas tworzenia nadawcy wsadowego możesz wybrać istniejący odbiornik partii jako docelową partię. Chociaż odbiorniki wsadowe nie muszą nic wiedzieć o nadawcach wsadowych, nadawcy wsadowi muszą wiedzieć, gdzie wysyłać komunikaty.

  • Upewnij się, że odbiornik wsadowy i nadawca wsadowy współużytkuje ten sam region platformy Azure i subskrypcję platformy Azure. Jeśli tak nie jest, nie możesz wybrać odbiornika wsadowego podczas tworzenia nadawcy wsadowego, ponieważ nie są one widoczne dla siebie.

  1. Utwórz kolejny zasób aplikacji logiki i przepływ pracy o nazwie BatchSender.

    Uwaga

    Jeśli masz zasób aplikacji logiki w warstwie Standardowa, pamiętaj o utworzeniu stanowego przepływu pracy, a nie bezstanowego przepływu pracy, ponieważ wyzwalacz cyklu jest niedostępny dla bezstanowych przepływów pracy.

  2. Wykonaj następujące ogólne kroki, aby dodać wyzwalacz Harmonogramu o nazwie Cykl.

    W tym przykładzie ustawia się interwał i częstotliwość uruchamiania przepływu pracy nadawcy co minutę.

  3. Dodaj nową akcję wysyłania komunikatów do partii.

    1. W obszarze wyzwalacza Cykl wybierz znak >plus (+) Dodaj nową akcję.

    2. Wykonaj następujące ogólne kroki, aby dodać akcję Operacje wsadowe o nazwie Wyślij do przepływu pracy wyzwalacza wsadowego (przepływ pracy zużycie) lub Wyślij do partii (standardowy przepływ pracy).

    3. W zależności od tego, czy masz przepływ pracy Zużycie, czy standardowy przepływ pracy, wykonaj odpowiednie kroki:

      Przepływ pracy użycia

      Po dodaniu akcji Przepływu pracy wyzwalacza usługi Batch zostanie wyświetlona lista zawierająca tylko zasoby aplikacji logiki z wyzwalaczami wsadowymi istniejącymi w tej samej subskrypcji platformy Azure i regionie świadczenia usługi Azure co zasób aplikacji logiki nadawcy wsadowego.

      1. Z listy aplikacji logiki wybierz wcześniej utworzoną aplikację logiki do użycia jako odbiornik wsadowy. Po wyświetleniu dostępnych wyzwalaczy wybierz wyzwalacz o nazwie Batch_messages.

        Zrzut ekranu przedstawiający przepływ pracy Zużycie z wyzwalaczem cyklu i akcją nadawcy wsadowego, która wybiera zasób i wyzwalacz aplikacji logiki odbiornika wsadowego.

        Ważne

        Jeśli używasz programu Visual Studio Code i nie widzisz żadnych odbiorników wsadowych do wybrania, sprawdź, czy wcześniej utworzono i wdrożono odbiornik wsadowy na platformie Azure. Jeśli nie, dowiedz się , jak wdrożyć zasób aplikacji logiki odbiornika usługi Batch na platformie Azure.

      2. Po zakończeniu wybierz pozycję Dodaj akcję.

      Standardowy przepływ pracy

      Po dodaniu akcji Wyślij do partii w okienku akcji zostaną wyświetlone następujące właściwości w następnym kroku, aby określić nazwę partii, zawartość komunikatu, nazwę przepływu pracy i nazwę wyzwalacza. Można określić informacje tylko dla przepływu pracy aplikacji logiki odbiornika wsadowego z wyzwalaczem wsadowym, który istnieje w tej samej subskrypcji platformy Azure i regionie platformy Azure co aplikacja logiki nadawcy wsadowego.

      Zrzut ekranu przedstawiający standardowy przepływ pracy z wyzwalaczem cyklu i akcją o nazwie Wyślij do partii.

  4. Ustaw następujące właściwości akcji odbiornika wsadowego:

    Właściwości opis
    Nazwa partii Nazwa partii zdefiniowana przez aplikację logiki odbiornika, która jest TestBatch w tym przykładzie

    Ważne: nazwa partii jest weryfikowana w czasie wykonywania i musi być zgodna z nazwą określoną przez aplikację logiki odbiornika usługi Batch. Zmiana nazwy partii powoduje niepowodzenie nadawcy partii.
    Zawartość wiadomości Zawartość wiadomości, którą chcesz wysłać. Zobacz poniższy przykład, aby użyć wartości.
    Nazwa przepływu pracy
    (Tylko standardowe przepływy pracy)
    Nazwa przepływu pracy, który ma wyzwalacz wsadowy.
    Nazwa wyzwalacza Nazwa wyzwalacza wsadowego w przepływie pracy aplikacji logiki odbiornika wsadowego. W obszarze Przepływy pracy Zużycie ta wartość jest automatycznie wypełniana z wybranej aplikacji logiki odbiornika wsadowego.
    Identyfikator przepływu pracy Identyfikator przepływu pracy, który ma przepływ pracy aplikacji logiki odbiornika wsadowego o nazwie wyzwalacza wsadowego. W obszarze Przepływy pracy Zużycie ta wartość jest automatycznie wypełniana z wybranej aplikacji logiki odbiornika wsadowego.

    W tym przykładzie dla wartości właściwości Content komunikatu dodaj następujące wyrażenie, które wstawia bieżącą datę i godzinę do zawartości wiadomości wysyłanej do partii:

    1. Wybierz wewnątrz pola Zawartość wiadomości, aby wyświetlić opcje zawartości dynamicznej (ikona błyskawica) i edytor wyrażeń (ikona funkcji).

    2. Wybierz ikonę funkcji, aby otworzyć edytor wyrażeń.

    3. W edytorze wprowadź funkcję o nazwie utcnow(), a następnie wybierz pozycję Dodaj.

      Przepływ pracy użycia

      Zrzut ekranu przedstawiający przepływ pracy Zużycie, okienko akcji nadawcy wsadowego, pole Zawartość wiadomości z kursorem, edytorem wyrażeń z funkcją utcNow i innymi szczegółami.

      Standardowy przepływ pracy

      Zrzut ekranu przedstawiający standardowy przepływ pracy, okienko akcji nadawcy wsadowego, pole Zawartość wiadomości z kursorem, edytorem wyrażeń z funkcją utcNow i innymi szczegółami.

  5. Teraz skonfiguruj partycję dla partii.

    1. W okienku akcji nadawcy wsadowego z listy Parametry zaawansowane wybierz następujące właściwości:

      Właściwości opis
      Nazwa partycji Opcjonalny unikatowy klucz partycji używany do dzielenia partii docelowej na podzestawy logiczne i zbieranie komunikatów na podstawie tego klucza.

      W tym przykładzie zapoznaj się z poniższymi krokami, aby dodać wyrażenie, które generuje losową liczbę z zakresu od jednego do pięciu.
      Identyfikator wiadomości Opcjonalny identyfikator komunikatu, który jest wygenerowanym globalnie unikatowym identyfikatorem (GUID), gdy jest pusty. W tym przykładzie pozostaw tę wartość pustą.
    2. Wybierz wewnątrz pola Nazwa partycji i wybierz opcję edytora wyrażeń (ikona funkcji).

    3. W edytorze wyrażeń wprowadź funkcję rand(1,6), a następnie wybierz pozycję Dodaj.

      W tym przykładzie jest generowana liczba z zakresu od jednego do pięciu. Dlatego dzielisz tę partię na pięć partycji ponumerowanych, które to wyrażenie dynamicznie ustawia.

      Zrzut ekranu przedstawiający funkcję o nazwie rand do dzielenia partii na partycje.

      Po zakończeniu przepływ pracy nadawcy wsadowego wygląda teraz podobnie do poniższego przykładu na podstawie typu przepływu pracy aplikacji logiki:

      Przepływ pracy użycia

      Zrzut ekranu przedstawiający przepływ pracy ukończonego nadawcy wsadowego Użycie aplikacji logiki.

      Standardowy przepływ pracy

      Zrzut ekranu przedstawiający ukończony przepływ pracy aplikacji logiki w warstwie Standardowa nadawcy wsadowego.

  6. Zapisz przepływ pracy.

Testowanie przepływów pracy

Aby przetestować rozwiązanie do przetwarzania wsadowego, pozostaw przepływy pracy aplikacji logiki uruchomione przez kilka minut. Wkrótce rozpoczniesz pobieranie wiadomości e-mail w grupach pięciu, wszystkie z tym samym kluczem partycji.

Aplikacja logiki nadawcy wsadowego jest uruchamiana co minutę i generuje losową liczbę z zakresu od jednego do pięciu. Nadawca wsadowy używa tej losowej liczby jako klucza partycji dla partii docelowej, w której są wysyłane komunikaty. Za każdym razem, gdy partia ma pięć elementów z tym samym kluczem partycji, aplikacja logiki odbiornika wsadowego jest uruchamiana i wysyła wiadomość e-mail dla każdej wiadomości.

Ważne

Po zakończeniu testowania upewnij się, że wyłączysz lub usuniesz przepływ pracy aplikacji logiki BatchSender , aby zatrzymać wysyłanie komunikatów i uniknąć przeciążenia skrzynki odbiorczej.