Folyamatüzenetek küldése, fogadása és kötegelése az Azure Logic Appsben
A következőkre vonatkozik: Azure Logic Apps (használat)
Ha csoportként egy adott módon szeretne üzeneteket küldeni és feldolgozni, létrehozhat egy kötegelési megoldást. Ez a megoldás összegyűjti az üzeneteket egy kötegbe , és megvárja, amíg a megadott feltételek teljesülnek a kötegezett üzenetek kiadása és feldolgozása előtt. A kötegelés csökkentheti, hogy a logikai alkalmazás milyen gyakran dolgozza fel az üzeneteket.
Ez az útmutató bemutatja, hogyan hozhat létre kötegelési megoldást két logikai alkalmazás létrehozásával ugyanabban az Azure-előfizetésben, az Azure-régióban, és ebben a sorrendben:
A "batch receiver" logikai alkalmazás, amely fogadja és gyűjti az üzeneteket egy kötegbe, amíg meg nem felel a megadott feltételeknek az üzenetek felszabadításakor és feldolgozásában. Győződjön meg arról, hogy először ezt a köteg-fogadót hozza létre, hogy később kiválaszthassa a köteg célhelyét a köteg feladójának létrehozásakor.
Egy vagy több "batch sender" logikai alkalmazás, amely elküldi az üzeneteket a korábban létrehozott kötegelt fogadónak.
A köteg feladója megadhat egy egyedi kulcsot, amely particionálja vagy osztja fel a cél köteget logikai részhalmazokra az adott kulcs alapján. Az ügyfélszám például egy egyedi kulcs. Így a fogadó alkalmazás összegyűjtheti az azonos kulccsal rendelkező összes elemet, és együtt feldolgozhatja őket.
A batch-fogadónak és a kötegelt feladónak ugyanazt az Azure-előfizetést és Azure-régiót kell megosztania. Ha nem, nem választhatja ki a köteg fogadóját a köteg feladójának létrehozásakor, mert nem láthatók egymás számára.
Előfeltételek
Azure-fiók és -előfizetés. Ha nem rendelkezik előfizetéssel, egy ingyenes Azure-fiókkal kezdhet. Vagy regisztráljon használatalapú fizetéses előfizetésre.
Az Azure Logic Apps által támogatott e-mail-szolgáltatóval rendelkező e-mail-fiók
Fontos
Ha a Gmail-összekötőt szeretné használni, csak a G-Suite üzleti fiókjai használhatják ezt az összekötőt korlátozás nélkül a logikai alkalmazásokban. Ha Gmail-felhasználói fiókkal rendelkezik, ezt az összekötőt csak bizonyos Google által jóváhagyott szolgáltatásokkal használhatja, vagy létrehozhat egy Google-ügyfélalkalmazást a Gmail-összekötővel való hitelesítéshez. További információ: Adatbiztonsági és adatvédelmi szabályzatok a Google-összekötőkhöz az Azure Logic Appsben.
A logikai alkalmazás munkafolyamatainak alapszintű ismerete
Ha a Visual Studiót szeretné használni a Azure Portal helyett, győződjön meg arról, hogy beállította a Visual Studiót a Logic Apps használatához.
Korlátozások
Csak a kiadás után ellenőrizheti a köteg tartalmát, ha összehasonlítja a kiadott tartalmat a forrással.
A kötegeket csak korai kiadással oldhatja fel, ha módosítja a batch-fogadó kiadási feltételeit, amelyről ebben az útmutatóban olvashat, miközben az eseményindító továbbra is rendelkezik a kötegével. Az eseményindító azonban a frissített kiadási feltételeket használja a nem küldött üzenetekhez.
Batch-fogadó létrehozása
Mielőtt üzeneteket küldhet egy kötegbe, a kötegnek először léteznie kell célként, ahol ezeket az üzeneteket elküldi. Ezért először létre kell hoznia a "batch receiver" logikai alkalmazást, amely a Batch-eseményindítóval kezdődik. Így a "batch sender" logikai alkalmazás létrehozásakor kiválaszthatja a batch receiver logikai alkalmazást. A batch-fogadó addig gyűjti az üzeneteket, amíg a megadott feltételek nem teljesülnek az üzenetek kiadásához és feldolgozásához. Bár a batch-fogadóknak semmit sem kell tudniuk a kötegelt feladókról, a kötegelt feladóknak tudniuk kell, hogy melyik célhelyen küldik el az üzeneteket.
A Azure Portal vagy a Visual Studióban hozzon létre egy ilyen nevű logikai alkalmazást:
BatchReceiver
A munkafolyamat-tervezőben adja hozzá a Batch-eseményindítót, amely elindítja a logikai alkalmazás munkafolyamatát. A keresőmezőbe írja be
batch
a kifejezést, és válassza ki ezt az eseményindítót: Batch-üzenetekÁllítsa be ezeket a tulajdonságokat a batch-fogadóhoz:
Tulajdonság Leírás Batch mód - Beágyazott: Kiadási feltételek definiálása a kötegelt eseményindítóban
- Integrációs fiók: Több kiadási feltétel konfigurációjának definiálása integrációs fiókon keresztül. Egy integrációs fiókkal ezeket a konfigurációkat egy helyen tarthatja fenn, nem pedig külön logikai alkalmazásokban.Köteg neve A köteg neve, amely ebben a példában "TestBatch", és csak a beágyazott kötegmódra vonatkozik Kiadási feltételek Csak a beágyazott köteg módra vonatkozik, és kiválasztja az egyes kötegek feldolgozása előtt teljesítendő feltételeket: - Üzenetszám alapján: Engedje fel a köteget a köteg által gyűjtött üzenetek száma alapján.
- Méretalapú: Engedje fel a köteget az adott köteg által gyűjtött összes üzenet bájtban megadott teljes mérete alapján.
- Ütemezés: Engedje fel a köteget egy ismétlődési ütemezés alapján, amely meghatározza az időközt és a gyakoriságot. A speciális beállítások között választhat egy időzónát is, és megadhat egy kezdési dátumot és időpontot.
- Jelölje ki az összeset: Használja az összes megadott feltételt.Üzenetszám A kötegben összegyűjtendő üzenetek száma, például 10 üzenet. A kötegek korlátja 8000 üzenet. Kötegméret A kötegben összegyűjtendő bájtok teljes mérete, például 10 MB. A köteg méretkorlátja 80 MB. Ütemezés A kötegkiadások közötti intervallum és gyakoriság, például 10 perc. A minimális ismétlődés 60 másodperc vagy 1 perc. A törtpercek kerekítése 1 percre történik. Időzóna vagy kezdési dátum és időpont megadásához nyissa meg az Új paraméter hozzáadása listát, és válassza ki a megfelelő tulajdonságokat. Megjegyzés
Ha módosítja a kiadási feltételeket, miközben az eseményindító még kötegelt, de nem küldött üzeneteket tartalmaz, az eseményindító a nem küldött üzenetek kezelésére a frissített kiadási feltételeket használja.
Ez a példa az összes feltételt megjeleníti, de a saját teszteléséhez csak egy feltételt próbáljon ki:
Most adjon hozzá egy vagy több műveletet, amelyek feldolgozzák az egyes kötegeket.
Ebben a példában adjon hozzá egy műveletet, amely e-mailt küld, amikor a köteg eseményindítója aktiválódik. Az eseményindító akkor fut és küld e-mailt, ha a köteg 10 üzenetet tartalmaz, eléri a 10 MB-ot, vagy 10 perc elteltével.
A kötegelt eseményindító alatt válassza az Új lépés lehetőséget.
A keresőmezőbe írja be
send email
szűrőként a kifejezést. Az e-mail-szolgáltatótól függően válasszon egy e-mail-összekötőt.Ha például munkahelyi vagy iskolai fiókja van( például @fabrikam.com vagy @fabrikam.onmicrosoft.com), válassza a Microsoft 365 Outlook-összekötőt . Ha személyes fiókkal (például @outlook.com vagy @hotmail.com) rendelkezik, válassza ki a Outlook.com összekötőt. Ez a példa a Microsoft 365 Outlook-összekötőt használja.
Válassza ki az "e-mail küldése" műveletet a szolgáltatójához, például:
Ha a rendszer kéri, jelentkezzen be az e-mail-fiókjába.
Adja meg a hozzáadott művelet tulajdonságait.
A Címzett mezőben adja meg a címzett e-mail-címét. Tesztelési célokra használhatja a saját e-mail-címét.
A Tárgy mezőben, amikor megjelenik a dinamikus tartalomlista, válassza a Partíció neve mezőt.
Később a köteg feladójában megadhat egy egyedi partíciókulcsot, amely a cél köteget logikai részhalmazokra osztja, ahol üzeneteket küldhet. Minden készlet egyedi számmal rendelkezik, amelyet a batch sender logikai alkalmazás hoz létre. Ez a képesség lehetővé teszi, hogy egyetlen köteget használjon több részhalmazsal, és az egyes részhalmazokat az Ön által megadott névvel definiálja.
Fontos
Egy partíció legfeljebb 5000 üzenetből vagy 80 MB-ból áll. Ha valamelyik feltétel teljesül, a Logic Apps akkor is kiadhatja a köteget, ha a megadott kiadási feltétel nem teljesül.
A Törzs mezőben, amikor megjelenik a dinamikus tartalomlista, válassza az Üzenetazonosító mezőt.
A munkafolyamat-tervező automatikusan hozzáad egy For each loopot az e-mail küldése művelethez, mert ez a művelet az előző művelet kimenetét gyűjteményként kezeli, nem pedig kötegként.
Mentse a logikai alkalmazást. Most létrehozott egy kötegvevőt.
Fontos
Ha Visual Studiót használ, mielőtt továbblép a következő szakaszra, győződjön meg arról, hogy először üzembe helyezi a batch receiver logikai alkalmazást az Azure-ban. Ellenkező esetben a köteg küldőjének létrehozásakor nem választhatja ki a köteg fogadóját.
Batch-küldő létrehozása
Most hozzon létre egy vagy több kötegelt küldő logikai alkalmazást, amely üzeneteket küld a batch receiver logikai alkalmazásnak. Minden egyes kötegküldőben meg kell adnia a köteg fogadóját és a köteg nevét, az üzenet tartalmát és minden más beállítást. Igény szerint megadhat egy egyedi partíciókulcsot, amellyel a köteg logikai részhalmazokra osztható az ezzel a kulccsal történő üzenetek gyűjtéséhez.
Győződjön meg arról, hogy korábban létrehozta és üzembe helyezte a batch-fogadót , így a köteg feladójának létrehozásakor kiválaszthatja a meglévő kötegvevőt célkötegként. Bár a kötegfogadóknak nem kell tudniuk semmit a kötegelt feladókról, a kötegelt feladóknak tudniuk kell, hogy hová kell küldeni az üzeneteket.
Győződjön meg arról, hogy a batch-fogadó és a kötegelt küldő ugyanazt az Azure-régiót és Azure-előfizetést használja. Ha nem, nem választhatja ki a köteg fogadóját a köteg feladójának létrehozásakor, mert nem láthatók egymás számára.
Hozzon létre egy másik logikai alkalmazást a következő néven:
BatchSender
A keresőmezőbe írja be
recurrence
a kifejezést szűrőként. Az eseményindítók listájában válassza ki ezt az eseményindítót: IsmétlődésÁllítsa be az időközt és a gyakoriságot a küldő logikai alkalmazás percenkénti futtatásához.
Új művelet hozzáadása üzenetek kötegbe küldéséhez.
Az Ismétlődés eseményindító alatt válassza az Új lépés lehetőséget.
A keresőmezőbe írja be
batch
a kifejezést szűrőként, majd válassza ki ezt a műveletet: Logic Apps-munkafolyamat kiválasztása kötegelt triggerrelMegjelenik egy lista, amely csak azokat a logikai alkalmazásokat jeleníti meg, amelyek kötegelt eseményindítókkal rendelkeznek, és ugyanabban az Azure-régióban és Azure-előfizetésben léteznek, mint a kötegelt küldő logikai alkalmazása.
A logikai alkalmazások listájából válassza ki a korábban létrehozott batch receiver logikai alkalmazást.
Fontos
Ha Visual Studiót használ, és nem lát kiválasztható kötegvevőket, ellenőrizze, hogy korábban létrehozta-e és üzembe helyezte-e a batch-fogadót az Azure-ban. Ha még nem tette meg, megtudhatja, hogyan helyezheti üzembe a batch receiver logikai alkalmazást az Azure-ban.
A műveletek listájából válassza ki a következő műveletet: Batch_messages – <saját-logic-app-name>
Adja meg a köteg feladójának tulajdonságait:
Tulajdonság Leírás Köteg neve A fogadó logikai alkalmazás által definiált kötegnév, amely ebben a példában található TestBatch
Fontos: A kötegnév futásidőben lesz érvényesítve, és meg kell egyeznie a fogadó logikai alkalmazás által megadott névvel. A köteg nevének módosítása a köteg feladójának sikertelenségéhez vezet.
Üzenet tartalma Az elküldeni kívánt üzenet tartalma Megjegyzés
Az Eseményindító neve és a Munkafolyamat tulajdonság értékei automatikusan ki lesznek töltve a kiválasztott logikai alkalmazásból.
Ebben a példában adja hozzá ezt a kifejezést, amely beszúrja az aktuális dátumot és időt a kötegbe küldött üzenettartalomba:
Kattintson az Üzenet tartalma mezőbe.
Amikor megjelenik a dinamikus tartalomlista, válassza a Kifejezés lehetőséget.
Írja be a kifejezést
utcnow()
, és válassza az OK gombot.
Most állítson be egy partíciót a köteghez. A műveletben
BatchReceiver
nyissa meg az Új paraméter hozzáadása listát, és válassza ki az alábbi tulajdonságokat:Tulajdonság Leírás Partíció neve Választható egyedi partíciókulcs, amellyel a célköteg logikai részhalmazokra osztható, és a kulcs alapján gyűjthet üzeneteket Üzenetazonosító Nem kötelező üzenetazonosító, amely egy globálisan egyedi azonosító (GUID) üres állapotban Ebben a példában a Partíció neve mezőben adjon hozzá egy olyan kifejezést, amely egy és öt közötti véletlenszerű számot hoz létre. Hagyja üresen az Üzenetazonosító mezőt.
Kattintson a Partíciónév mezőbe, hogy megjelenjen a dinamikus tartalomlista.
A dinamikus tartalomlistában válassza a Kifejezés lehetőséget.
Írja be a kifejezést
rand(1,6)
, majd kattintson az OK gombra.Ez a rand függvény egy és öt közötti számot hoz létre. Tehát ezt a köteget öt számozott partícióra osztja, amelyeket ez a kifejezés dinamikusan állít be.
Mentse a logikai alkalmazást. A küldő logikai alkalmazása most az alábbi példához hasonlóan néz ki:
A logikai alkalmazások tesztelése
A kötegelési megoldás teszteléséhez hagyja futni a logikai alkalmazásokat néhány percig. Hamarosan öt fős csoportokba kezdi az e-maileket, mindegyik ugyanazzal a partíciókulccsal.
A kötegküldő logikai alkalmazás percenként fut, és egy és öt közötti véletlenszerű számot hoz létre. A köteg feladója ezt a véletlenszerű számot használja partíciókulcsként ahhoz a cél köteghez, ahová az üzeneteket küldi. Minden alkalommal, amikor a köteg öt elemet tartalmaz ugyanazzal a partíciókulccsal, a batch-fogadó logikai alkalmazás minden üzenethez küld e-mailt.
Fontos
Ha végzett a teszteléssel, tiltsa le a logikai alkalmazást, BatchSender
hogy ne küldjön üzeneteket, és ne terhelje túl a beérkezett üzeneteket.