MuleSoft - Temel Bileşenler ve Yapılandırma

Mule'ın en önemli yeteneklerinden biri bileşenlerle yönlendirme, dönüştürme ve işleme yapabilmesidir, çünkü çeşitli unsurları birleştiren Mule uygulamasının konfigürasyon dosyası çok büyük boyuttadır.

Aşağıda, Mule tarafından sağlanan konfigürasyon modeli türleri verilmiştir -

  • Basit hizmet modeli
  • Bridge
  • Validator
  • HTTP proxy
  • WS proxy'si

Bileşeni yapılandırma

Anypoint stüdyosunda, bir bileşeni yapılandırmak için aşağıdaki adımları takip edebiliriz -

Step 1

Katır uygulamamızda kullanmak istediğimiz bileşeni sürüklememiz gerekiyor. Örneğin, burada HTTP dinleyici bileşenini aşağıdaki gibi kullanıyoruz -

Step 2

Ardından, yapılandırma penceresini açmak için bileşene çift tıklayın. HTTP dinleyicisi için aşağıda gösterilmiştir -

Step 3

Bileşeni projemizin ihtiyacına göre yapılandırabiliriz. Örneğin, HTTP dinleyici bileşeni için yaptık -

Çekirdek bileşenler, Mule uygulamasındaki iş akışının önemli yapı taşlarından biridir. Bir Katır olayını işleme mantığı, bu temel bileşenler tarafından sağlanır. Anypoint stüdyosunda, bu temel bileşenlere erişmek için, aşağıda gösterildiği gibi Katır Paletinden Çekirdeğe tıklayabilirsiniz -

Aşağıdakiler çeşitli core components and their working in Mule 4 -

Özel İş Etkinlikleri

Bu temel bileşen, akışlar ve Mule uygulamasındaki ticari işlemleri gerçekleştiren mesaj işlemcileri hakkında bilgi toplamak için kullanılır. Diğer bir deyişle, aşağıdakileri çalışma akışımıza eklemek için Özel İş Etkinliği bileşenini kullanabiliriz -

  • Metadata
  • Temel performans Göstergeleri (KPI'lar)

KPI'lar nasıl eklenir?

Aşağıda, Mule uygulamasındaki akışımıza KPI ekleme adımları verilmiştir -

Step 1 - Katır'ı takip et Palette → Core → Components → Custom Business Event, Katır uygulamanızda bir çalışma akışına Özel İş Etkinliği bileşeni eklemek için.

Step 2 - Açmak için bileşene tıklayın.

Step 3 - Şimdi, Görünen Ad ve Etkinlik Adı için değerler sağlamamız gerekiyor.

Step 4 - Mesaj yükünden bilgi almak için, KPI'leri aşağıdaki gibi ekleyin -

  • KPI ( izleme: meta-veri öğesi) için bir ad (anahtar ) ve bir değer verin. Ad, Runtime Manager'ın arama arayüzünde kullanılacaktır.

  • Herhangi bir Katır ifadesi olabilecek bir değer verin.

Misal

Aşağıdaki tablo, Adı ve Değeri olan KPI'ların listesinden oluşmaktadır -

İsim İfade / Değer
Öğrenci ListesiHayır # [yük ['RollNo']]
Öğrenci adı # [yük ['Ad']]

Dinamik Değerlendirme

Bu temel bileşen, Mule uygulamasında dinamik olarak bir komut dosyası seçmek için kullanılır. Ayrıca, İleti Dönüştür Bileşeni aracılığıyla sert komut dosyası kullanabiliriz, ancak Dinamik Değerlendirme bileşenini kullanmak daha iyi bir yoldur. Bu temel bileşen şu şekilde çalışır -

  • İlk olarak, başka bir komut dosyasıyla sonuçlanması gereken bir ifadeyi değerlendirir.
  • Daha sonra bu senaryoyu nihai sonuç için değerlendirir.

Bu şekilde, komut dosyasını kodlamak yerine dinamik olarak seçmemize olanak tanır.

Misal

Aşağıda, bir Id sorgu parametresi aracılığıyla veritabanından bir komut dosyası seçmeye ve bu komut dosyasını MyScript adlı bir değişkende depolamaya bir örnek verilmiştir . Şimdi, dinamik değerlendirme bileşeni, komut dosyalarını çağırmak için değişkene erişecek, böylece bir ad değişkeni ekleyecektir.UName sorgu parametresi.

Akışın XML yapılandırması aşağıda verilmiştir -

<flow name = "DynamicE-example-flow">
   <http:listener config-ref = "HTTP_Listener_Configuration" path = "/"/>
   <db:select config-ref = "dbConfig" target = "myScript">
      <db:sql>#["SELECT script FROM SCRIPTS WHERE ID = 
         $(attributes.queryParams.Id)"]
      </db:sql>
   </db:select>
   <ee:dynamic-evaluate expression = "#[vars.myScript]">
      <ee:parameters>#[{name: attributes.queryParams.UName}]</ee:parameters>
   </ee:dynamic-evaluate>
</flow>

Komut dosyası, mesaj, yük, değişkenler veya öznitelikler gibi bağlam değişkenlerini kullanabilir. Ancak, özel bağlam değişkeni eklemek istiyorsanız, bir dizi anahtar / değer çifti sağlamanız gerekir.

Dinamik Değerlendirmeyi Yapılandırma

Aşağıdaki tablo, Dinamik Değerlendirme bileşenini yapılandırmanın bir yolunu sağlar -

Alan Değer Açıklama Misal
İfade DataWeave ifadesi Son komut dosyası içinde değerlendirilecek ifadeyi belirtir. ifade = "# [vars.generateOrderScript]"
Parametreler DataWeave ifadesi Anahtar-değer çiftlerini belirtir. # [{birleştirici: 've', id: payload.user.id}]

Akış Referans Bileşeni

Katır olayını başka bir akışa veya alt akışa ve aynı Katır uygulaması içinde geri yönlendirmek istiyorsanız, akış referansı bileşeni doğru seçenektir.

Özellikler

Bu temel bileşenin özellikleri aşağıdadır -

  • Bu temel bileşen, referans verilen tüm akışı mevcut akıştaki tek bir bileşen gibi ele almamızı sağlar.

  • Katır uygulamasını ayrı ve yeniden kullanılabilir birimlere böler. Örneğin, bir akış dosyaları düzenli olarak listeler. Liste işleminin çıktısını işleyen başka bir akışa başvurabilir.

  • Bu şekilde, tüm işleme adımlarını eklemek yerine, işleme akışına işaret eden Akış Referansları ekleyebiliriz. Aşağıdaki ekran görüntüsü, Akış Referans Çekirdek Bileşeninin adlı bir alt akışı işaret ettiğini göstermektedir.ProcessFiles.

Çalışma

Flow Ref bileşeninin çalışması aşağıdaki diyagramın yardımıyla anlaşılabilir -

Diyagram, aynı uygulamada bir akış başka bir akışa başvurduğunda Katır uygulamasındaki işleme sırasını gösterir. Katır uygulamasındaki ana çalışma akışı tetiklendiğinde, Katır olayı baştan sona hareket eder ve Katır olayı Akış Referansına ulaşana kadar akışı yürütür.

Akış Referansına ulaştıktan sonra, Katır olayı referans verilen akışı baştan sona yürütür. Katır olayı Ref Akışını yürütmeyi bitirdiğinde, ana akışa geri döner.

Misal

Daha iyi anlamak için, let us use this component in Anypoint Studio. Bu örnekte, önceki bölümde yaptığımız gibi, HTTP dinleyiciyi bir mesaj GET'e götürüyoruz. Böylece bileşeni sürükleyip bırakabilir ve yapılandırabiliriz. Ancak bu örnek için, aşağıda gösterildiği gibi bir Alt akış bileşeni eklememiz ve bunun altında Yük bileşeni ayarlamamız gerekiyor -

Ardından, yapılandırmamız gerekiyor Set Payload, üzerine çift tıklayarak. Burada, aşağıda gösterildiği gibi "Yürütülen alt akış" değerini veriyoruz -

Alt akış bileşenini başarılı bir şekilde yapılandırdıktan sonra, aşağıda gösterildiği gibi Katır Paletinden sürükleyip bırakabileceğimiz ana akış Yükünü Ayarladıktan sonra ayarlamak için Akış Referans Bileşenine ihtiyacımız var -

Ardından, Akış Referans Bileşenini yapılandırırken, aşağıda gösterildiği gibi Genel sekmesi altında Akış Adı'nı seçmemiz gerekir -

Şimdi bu uygulamayı kaydedin ve çalıştırın. Bunu test etmek için POSTMAN'a gidin ve şunu yazın:http:/localhost:8181/FirstAPP URL çubuğunda ve Alt akış yürütüldü mesajını alacaksınız.

Logger Bileşeni

Logger olarak adlandırılan temel bileşen, hata mesajları, durum bildirimleri, yükler vb. Gibi önemli bilgileri günlüğe kaydederek Katır uygulamamızı izlememize ve hata ayıklamamıza yardımcı olur. AnyPoint stüdyosunda bunlar Console.

Avantajlar

Aşağıda Logger Bileşeninin bazı avantajları verilmiştir -

  • Bu temel bileşeni çalışma akışının herhangi bir yerine ekleyebiliriz.
  • Bizim tarafımızdan belirtilen bir dizeyi günlüğe kaydedecek şekilde yapılandırabiliriz.
  • Bizim tarafımızdan yazılmış bir DataWeave ifadesinin çıktısı olarak yapılandırabiliriz.
  • Ayrıca herhangi bir dizge ve ifade kombinasyonuna göre yapılandırabiliriz.

Misal

Aşağıdaki örnek, bir tarayıcıda Yükü Ayarla'da "Merhaba Dünya" mesajını görüntüler ve mesajı da günlüğe kaydeder.

Yukarıdaki örnekteki akışın XML yapılandırması aşağıdadır -

<http:listener-config name = "HTTP_Listener_Configuration" host = "localhost" port = "8081"/>
<flow name = "mymuleprojectFlow">
   <http:listener config-ref="HTTP_Listener_Configuration" path="/"/>
   <set-payload value="Hello World"/>
   <logger message = "#[payload]" level = "INFO"/>
</flow>

Transfer Mesajı Bileşeni

Transfer bileşeni olarak da adlandırılan Mesaj Bileşenini Dönüştür, girdi verilerini yeni bir çıktı biçimine dönüştürmemizi sağlar.

Dönüşüm oluşturma yöntemleri

Dönüşümümüzü aşağıdaki iki yöntemin yardımıyla inşa edebiliriz -

Drag-and-Drop Editor (Graphical View)- Dönüşümümüzü inşa etmek için ilk ve en çok kullanılan yöntem budur. Bu yöntemde, gelen veri yapısının elemanlarını sürükleyip bırakmak için bu bileşenin görsel eşleştiricisini kullanabiliriz. Örneğin, aşağıdaki diyagramda, iki ağaç görünümü, giriş ve çıkışın beklenen meta veri yapılarını gösterir. Girişi çıktı alanına bağlayan çizgiler, iki ağaç görünümü arasındaki eşlemeyi temsil eder.

Script View- Dönüşümün görsel haritalaması, Katır kodu için bir dil olan DataWeave yardımıyla da temsil edilebilir. Toplama, normalleştirme, gruplama, birleştirme, bölümleme, pivotlama ve filtreleme gibi bazı gelişmiş dönüşümler için kodlama yapabiliriz. Örnek aşağıda verilmiştir -

Bu çekirdek bileşen temelde bir değişken, bir öznitelik veya mesaj yükü için girdi ve çıktı meta verilerini kabul eder. Aşağıdakiler için biçime özel kaynaklar sağlayabiliriz -

  • CSV
  • Schema
  • Düz dosya Şeması
  • JSON
  • Object sınıfı
  • Basit Tip
  • XML Şeması
  • Excel Sütun adı ve türü
  • Sabit Genişlik Sütun adı ve türü