Azure Logic Apps'te iletileri gönderme, alma ve toplu işleme
Şunlar için geçerlidir: Azure Logic Apps (Tüketim)
İletileri grup olarak belirli bir şekilde birlikte göndermek ve işlemek için bir toplu iş çözümü oluşturabilirsiniz. Bu çözüm iletileri toplu iş halinde toplar ve toplu iletileri serbest bırakmadan ve işlemeden önce belirtilen ölçütleriniz karşılanana kadar bekler. Toplu işlem, mantıksal uygulamanızın iletileri işleme sıklıklarını azaltabilir.
Bu nasıl yapılır kılavuzunda, aynı Azure aboneliğinde, Azure bölgesinde ve şu sırayla iki mantıksal uygulama oluşturarak toplu iş çözümü oluşturmayı gösterir:
Bu iletileri serbest bırakmak ve işlemek için belirtilen ölçütleriniz karşılanana kadar iletileri kabul eden ve toplu olarak toplayan "batch alıcısı" mantıksal uygulaması. Daha sonra toplu iş gönderenini oluştururken toplu iş hedefini seçebilmeniz için önce bu toplu iş alıcısını oluşturduğunuzdan emin olun.
İletileri önceden oluşturulmuş toplu iş alıcısına gönderen bir veya daha fazla "toplu gönderen" mantıksal uygulaması.
Toplu işlemi gönderen, hedef toplu işlemi bu anahtara göre mantıksal alt kümelere bölen veya bölen benzersiz bir anahtar belirtebilir. Örneğin, müşteri numarası benzersiz bir anahtardır. Bu şekilde, alıcı uygulaması aynı anahtara sahip tüm öğeleri toplayabilir ve birlikte işleyebilir.
Toplu iş alıcınızın ve toplu iş göndereninizin aynı Azure aboneliğini ve Azure bölgesini paylaşması gerekir. Bunlar yoksa, toplu iş göndereni oluştururken toplu iş alıcısını seçemezsiniz, çünkü bunlar birbirine görünmez.
Önkoşullar
Bir Azure hesabı ve aboneliği Aboneliğiniz yoksa ücretsiz bir Azure hesabıyla başlayabilirsiniz. Alternatif olarak Kullandıkça Öde aboneliğine de kaydolabilirsiniz.
Azure Logic Apps tarafından desteklenen herhangi bir e-posta sağlayıcısına sahip bir e-posta hesabı
Önemli
Gmail bağlayıcısını kullanmak istiyorsanız, mantıksal uygulamalarda kısıtlama olmadan yalnızca G-Suite iş hesapları bu bağlayıcıyı kullanabilir. Gmail tüketici hesabınız varsa bu bağlayıcıyı yalnızca Belirli Google onaylı hizmetlerle kullanabilir veya Gmail bağlayıcınızla kimlik doğrulaması için kullanılacak bir Google istemci uygulaması oluşturabilirsiniz. Daha fazla bilgi için bkz. Azure Logic Apps'te Google bağlayıcıları için veri güvenliği ve gizlilik ilkeleri.
Mantıksal uygulama iş akışları hakkında temel bilgi
Azure portal yerine Visual Studio'yu kullanmak için Visual Studio'yu Logic Apps ile çalışacak şekilde ayarladığınızdan emin olun.
Sınırlamalar
Yayından sonra yalnızca yayımlanan içeriği kaynakla karşılaştırarak bir toplu iş içindeki içeriği de kontrol edebilirsiniz.
Toplu işlemi yalnızca toplu iş alıcısında yayın ölçütlerini değiştirerek erken serbest bırakabilirsiniz. Bu kılavuzda açıklanmıştır ve tetikleyicide toplu işlem hala bulunur. Ancak tetikleyici, kaydedilmemiş iletiler için güncelleştirilmiş yayın ölçütlerini kullanır.
Toplu iş alıcısı oluşturma
Toplu işleme ileti gönderebilmeniz için önce bu toplu iş, bu iletileri gönderdiğiniz hedef olarak bulunmalıdır. Bu nedenle öncelikle Batch tetikleyicisiyle başlayan "batch alıcısı" mantıksal uygulamasını oluşturmanız gerekir. Bu şekilde, "toplu gönderen" mantıksal uygulamasını oluşturduğunuzda toplu iş alıcısı mantıksal uygulamasını seçebilirsiniz. Toplu iş alıcısı, bu iletileri serbest bırakmak ve işlemek için belirtilen ölçütleriniz karşılanana kadar iletileri toplamaya devam eder. Toplu iş alıcılarının toplu gönderenler hakkında hiçbir şey bilmesi gerekmezken, toplu gönderenlerin iletileri gönderdikleri hedefi bilmesi gerekir.
Azure portal veya Visual Studio'da şu ada sahip bir mantıksal uygulama oluşturun:
BatchReceiver
İş akışı tasarımcısında mantıksal uygulama iş akışınızı başlatan Batch tetikleyicisini ekleyin. Arama kutusuna yazın
batch
ve şu tetikleyiciyi seçin: Batch iletileriToplu iş alıcısı için şu özellikleri ayarlayın:
Özellik Açıklama Toplu İş Modu - Satır içi: Toplu iş tetikleyicisinin içinde yayın ölçütlerini tanımlamak için
- Tümleştirme Hesabı: Tümleştirme hesabı aracılığıyla birden çok yayın ölçütü yapılandırması tanımlamak için. Tümleştirme hesabıyla, bu yapılandırmaların tümünü ayrı mantıksal uygulamalar yerine tek bir yerde tutabilirsiniz.Toplu İş Adı Bu örnekte "TestBatch" olan ve yalnızca Satır içi toplu iş moduna uygulanan toplu işleminizin adı Yayın Ölçütleri Yalnızca Satır içi toplu iş moduna uygulanır ve her toplu işlemi işlemeden önce karşılanması gereken ölçütleri seçer: - İleti sayısı tabanlı: Toplu işlem tarafından toplanan ileti sayısına göre toplu işlemi serbest bırakın.
- Boyut tabanlı: Toplu işlem tarafından toplanan tüm iletiler için bayt cinsinden toplam boyuta göre toplu işlemi serbest bırakın.
- Zamanlama: Toplu işlemi bir aralık ve sıklık belirten bir yinelenme zamanlamasına göre serbest bırakın. Gelişmiş seçeneklerde bir saat dilimi seçip başlangıç tarihi ve saati de sağlayabilirsiniz.
- Tümünü seç: Belirtilen tüm ölçütleri kullanın.İleti Sayısı Toplu işlemde toplayacak ileti sayısı(örneğin, 10 ileti). Toplu iş sınırı 8.000 iletidir. Toplu İş Boyutu Toplu işlemde toplayacak toplam bayt boyutu (örneğin, 10 MB). Toplu iş boyut sınırı 80 MB'tır. Zamanla Toplu yayınlar arasındaki aralık ve sıklık (örneğin, 10 dakika). En düşük yinelenme 60 saniye veya 1 dakikadır. Kesirli dakikalar etkin bir şekilde 1 dakikaya yuvarlanmış olur. Bir saat dilimi veya başlangıç tarihi ve saati belirtmek için Yeni parametre ekle listesini açın ve ilgili özellikleri seçin. Not
Tetikleyici hala toplu ancak yanıtsız iletilere sahipken yayın ölçütlerini değiştirirseniz, tetikleyici, atanmamış iletileri işlemek için güncelleştirilmiş yayın ölçütlerini kullanır.
Bu örnekte tüm ölçütler gösterilir, ancak kendi testiniz için tek bir ölçüt deneyin:
Şimdi her toplu işlemi işleyen bir veya daha fazla eylem ekleyin.
Bu örnekte, toplu iş tetikleyicisi tetiklendiğinde e-posta gönderen bir eylem ekleyin. Toplu işlem 10 iletiye sahip olduğunda, 10 MB'a ulaştığında veya 10 dakika geçtikten sonra tetikleyici çalışır ve bir e-posta gönderir.
Toplu iş tetikleyicisinin altında Yeni adım'ı seçin.
Arama kutusuna filtre olarak yazın
send email
. E-posta sağlayıcınıza göre bir e-posta bağlayıcısı seçin.Örneğin, veya @fabrikam.onmicrosoft.comgibi @fabrikam.com bir iş veya okul hesabınız varsa Microsoft 365 Outlook bağlayıcısını seçin. veya @hotmail.comgibi @outlook.com kişisel bir hesabınız varsa Outlook.com bağlayıcısını seçin. Bu örnekte Microsoft 365 Outlook bağlayıcısı kullanılır.
Sağlayıcınız için "e-posta gönder" eylemini seçin, örneğin:
İstenirse, e-posta hesabınızda oturum açın.
Eklediğiniz eylemin özelliklerini ayarlayın.
Alıcı kutusuna alıcının e-posta adresini girin. Test için kendi e-posta adresinizi kullanabilirsiniz.
Konu kutusunda, dinamik içerik listesi görüntülendiğinde Bölüm Adı alanını seçin.
Daha sonra, toplu iş göndereninde hedef toplu işlemi iletileri gönderebileceğiniz mantıksal alt kümelere bölen benzersiz bir bölüm anahtarı belirtebilirsiniz. Her küme, toplu gönderen mantıksal uygulaması tarafından oluşturulan benzersiz bir sayıya sahiptir. Bu özellik, birden çok alt kümeye sahip tek bir toplu iş kullanmanıza ve her alt kümeyi sağladığınız adla tanımlamanıza olanak tanır.
Önemli
Bir bölümün sınırı 5.000 ileti veya 80 MB'tır. Herhangi bir koşul karşılanırsa, tanımlı yayın koşulunuz karşılanmasa bile Logic Apps toplu işlemi serbest bırakabilir.
Gövde kutusunda dinamik içerik listesi görüntülendiğinde İleti Kimliği alanını seçin.
İş akışı tasarımcısı, e-posta gönder eyleminin çevresinde her bir döngü için otomatik olarak bir döngü ekler çünkü bu eylem önceki eylemdeki çıkışı toplu işlem yerine bir koleksiyon olarak ele alır.
Mantıksal uygulamanızı kaydedin. Şimdi bir toplu iş alıcısı oluşturdunuz.
Önemli
Visual Studio kullanıyorsanız, sonraki bölüme geçmeden önce toplu alıcı mantıksal uygulamanızı Azure'a dağıttığınızdan emin olun. Aksi takdirde, toplu iş göndereni oluştururken toplu iş alıcısını seçemezsiniz.
Toplu gönderen oluşturma
Şimdi toplu alıcı mantıksal uygulamasına ileti gönderen bir veya daha fazla toplu gönderen mantıksal uygulaması oluşturun. Her toplu iş göndereninde toplu iş alıcısını ve toplu iş adını, ileti içeriğini ve diğer ayarları belirtirsiniz. İsteğe bağlı olarak, toplu işlemi bu anahtarla ileti toplamak için mantıksal alt kümelere bölmek için benzersiz bir bölüm anahtarı sağlayabilirsiniz.
Toplu iş göndereninizi oluşturduğunuzda hedef toplu iş olarak mevcut toplu iş alıcısını seçebilmeniz için toplu iş alıcınızı önceden oluşturduğunuzdan ve dağıttığınızdan emin olun. Toplu iş alıcılarının toplu iş gönderenleri hakkında hiçbir şey bilmesi gerekmez, ancak toplu işlemi gönderenler iletilerin nereye gönderileceği konusunda bilgi sahibi olmalıdır.
Toplu iş alıcınızın ve toplu iş göndereninizin aynı Azure bölgesini ve Azure aboneliğini paylaştığından emin olun. Bunlar yoksa, toplu iş göndereni oluştururken toplu iş alıcısını seçemezsiniz, çünkü bunlar birbirine görünmez.
Bu adla başka bir mantıksal uygulama oluşturun:
BatchSender
Arama kutusuna filtre olarak yazın
recurrence
. Tetikleyiciler listesinden şu tetikleyiciyi seçin: YinelenmeGönderen mantıksal uygulamasını dakikada bir çalıştırmak için aralığı ve sıklığı ayarlayın.
Toplu işleme ileti göndermek için yeni bir eylem ekleyin.
Yinelenme tetikleyicisinin altında Yeni adım'ı seçin.
Arama kutusuna filtreniz olarak yazın
batch
ve şu eylemi seçin: Batch tetikleyicisi olan bir Logic Apps iş akışı seçinBir liste görüntülenir ve yalnızca toplu iş tetikleyicileri olan ve toplu iş gönderen mantıksal uygulamanızla aynı Azure bölgesinde ve Azure aboneliğinde bulunan mantıksal uygulamaları gösterir.
Mantıksal uygulamalar listesinden, daha önce oluşturduğunuz toplu alıcı mantıksal uygulamasını seçin.
Önemli
Visual Studio kullanıyorsanız ve seçecek toplu alıcı görmüyorsanız toplu iş alıcınızı daha önce oluşturup Azure'a dağıtıp dağıtmadığınızı denetleyin. Henüz yapmadıysanız toplu işlem alıcı mantıksal uygulamanızı Azure'a dağıtmayı öğrenin.
Eylemler listesinden şu eylemi seçin: Batch_messages - <sizin-logic-app-adınız>
Toplu gönderenin özelliklerini ayarlayın:
Özellik Açıklama Toplu İş Adı Bu örnekteki alıcı mantıksal uygulaması TestBatch
tarafından tanımlanan toplu iş adıÖnemli: Toplu iş adı çalışma zamanında doğrulanır ve alıcı mantıksal uygulaması tarafından belirtilen adla eşleşmelidir. Toplu iş adını değiştirmek, toplu iş göndereninin başarısız olmasına neden olur.
İleti İçeriği Göndermek istediğiniz iletinin içeriği Not
Tetikleyici Adı ve İş Akışı özellik değerleri, seçtiğiniz mantıksal uygulamadan otomatik olarak doldurulur.
Bu örnekte, toplu iş için gönderdiğiniz ileti içeriğine geçerli tarih ve saati ekleyen bu ifadeyi ekleyin:
İleti İçeriği kutusunun içine tıklayın.
Dinamik içerik listesi görüntülendiğinde İfade'yi seçin.
ifadesini
utcnow()
girin ve Tamam'ı seçin.
Şimdi toplu iş için bir bölüm ayarlayın. Eylemde
BatchReceiver
Yeni parametre ekle listesini açın ve şu özellikleri seçin:Özellik Açıklama Bölüm Adı Hedef toplu işlemi mantıksal alt kümelere bölmek ve bu anahtarı temel alan iletileri toplamak için kullanılacak isteğe bağlı benzersiz bölüm anahtarı İleti Kimliği Boş olduğunda oluşturulan genel olarak benzersiz bir tanımlayıcı (GUID) olan isteğe bağlı bir ileti tanımlayıcısı Bu örnekte, Bölüm Adı kutusuna bir ile beş arasında rastgele bir sayı oluşturan bir ifade ekleyin. İleti Kimliği kutusunu boş bırakın.
Dinamik içerik listesinin görünmesi için Bölüm Adı kutusunun içine tıklayın.
Dinamik içerik listesinde İfade'yi seçin.
ifadesini
rand(1,6)
girin ve Tamam'ı seçin.Bu rand işlevi bir ile beş arasında bir sayı oluşturur. Bu nedenle, bu toplu işlemi, bu ifadenin dinamik olarak ayarladığı beş numaralandırılmış bölüme bölersiniz.
Mantıksal uygulamanızı kaydedin. Gönderen mantıksal uygulamanız artık şu örneğe benzer:
Mantıksal uygulamalarınızı test etme
Toplu işlem çözümünüzü test etmek için mantıksal uygulamalarınızı birkaç dakika boyunca çalışır durumda bırakın. Kısa süre sonra, tümü aynı bölüm anahtarına sahip beşli gruplar halinde e-posta almaya başlayacaksınız.
Toplu gönderen mantıksal uygulamanız dakikada bir çalıştırılır ve bir ile beş arasında rastgele bir sayı oluşturur. Toplu işlemi gönderen, iletileri gönderdiğiniz hedef toplu iş için bölüm anahtarı olarak bu rastgele sayıyı kullanır. Toplu işlemde aynı bölüm anahtarına sahip beş öğe bulunduğunda, toplu iş alıcısı mantıksal uygulamanız her ileti için postayı tetikler ve gönderir.
Önemli
Testi tamamladığınızda, ileti göndermeyi durdurmak ve gelen kutunuzu BatchSender
aşırı yüklemekten kaçınmak için mantıksal uygulamayı devre dışı bıraktığınızdan emin olun.