MuleSoft - Prosesor Pesan & Komponen Skrip

Modul scripting memfasilitasi pengguna untuk menggunakan bahasa scripting di Mule. Dengan kata sederhana, modul skrip dapat bertukar logika khusus yang ditulis dalam bahasa skrip. Skrip dapat digunakan sebagai Implementasi atau transformator. Mereka dapat digunakan untuk evaluasi ekspresi, yaitu untuk mengontrol perutean pesan.

Mule memiliki bahasa skrip yang didukung berikut -

  • Groovy
  • Python
  • JavaScript
  • Ruby

Bagaimana cara Menginstal Modul Scripting?

Sebenarnya, Anypoint Studio hadir dengan modul scripting. Jika Anda tidak menemukan modul di Palet Mule, maka modul dapat ditambahkan dengan menggunakan+Add Module. Setelah menambahkan, kita dapat menggunakan operasi modul scripting di aplikasi Mule kita.

Menerapkan Contoh

Seperti yang telah dibahas, kita perlu menyeret dan melepas modul ke kanvas untuk membuat ruang kerja dan menggunakannya dalam aplikasi kita. Berikut ini adalah contohnya -

Kita sudah tahu cara mengkonfigurasi komponen Pemroses HTTP; maka kita akan membahas tentang konfigurasi Modul Scripting. Kita perlu mengikuti langkah-langkah yang tertulis di bawah ini untuk mengkonfigurasi modul scripting -

Step 1

Cari modul Scripting dari Mule Palette dan seret EXECUTE pengoperasian modul skrip ke dalam alur Anda seperti yang ditunjukkan di atas.

Step 2

Sekarang, buka tab Execute configuration dengan mengklik dua kali pada hal yang sama.

Step 3

Di bawah General tab, kita perlu memberikan kode di Code text window seperti yang ditunjukkan di bawah ini -

Step 4

Akhirnya, kita perlu memilih file Enginedari komponen eksekusi. Daftar mesinnya adalah sebagai berikut -

  • Groovy
  • Nashorn(javaScript)
  • jython(Python)
  • jRuby(Ruby)

XML dari contoh eksekusi di atas dalam editor XML Konfigurasi adalah sebagai berikut -

<scripting:execute engine="jython" doc:name = "Script">
   <scripting:code>
      def factorial(n):
         if n == 0: return 1
      return n * factorial(n-1)
      result = factorial(10)
   </scripting:code>
</scripting:execute>

Sumber Pesan

Mule 4 memiliki model yang disederhanakan daripada pesan Mule 3 sehingga lebih mudah untuk bekerja dengan data secara konsisten di seluruh konektor tanpa menimpa informasi. Dalam model pesan Mule 4, setiap event Mule terdiri dari dua hal:a message and variables associated with it.

Pesan Mule memiliki payload dan atributnya, di mana atribut utamanya adalah metadata seperti ukuran file.

Dan variabel menyimpan informasi pengguna yang sewenang-wenang seperti hasil operasi, nilai tambahan, dll.

Masuk

Properti masuk di Mule 3 sekarang menjadi Atribut di Mule 4. Seperti yang kita ketahui bahwa properti masuk menyimpan informasi tambahan tentang muatan yang diperoleh melalui sumber pesan, tetapi sekarang, di Mule 4, dilakukan dengan bantuan atribut. Atribut memiliki keuntungan sebagai berikut -

  • Dengan bantuan atribut, kita dapat dengan mudah melihat data mana yang tersedia, karena atribut diketik dengan kuat.

  • Kita dapat dengan mudah mengakses informasi yang terdapat dalam atribut.

Berikut adalah contoh pesan umum di Mule 4 -

Keluar

Properti keluar di Mule 3 harus secara eksplisit ditentukan oleh konektor dan transportasi Mule untuk mengirim data tambahan. Namun di Mule 4, masing-masing dapat disetel secara terpisah, menggunakan ekspresi DataWeave untuk masing-masingnya. Itu tidak menghasilkan efek samping apa pun di aliran utama.

Misalnya, di bawah ekspresi DataWeave akan melakukan permintaan HTTP dan menghasilkan header dan parameter kueri tanpa perlu menyetel properti pesan. Ini ditunjukkan pada kode di bawah ini -

<http:request path = "M_issue" config-ref="http" method = "GET">
   <http:headers>#[{'path':'input/issues-list.json'}]</http:headers>
   <http:query-params>#[{'provider':'memory-provider'}]</http:query-params>
</http:request>

Prosesor Pesan

Setelah Mule menerima pesan dari sumber pesan, pekerjaan prosesor pesan dimulai. Mule menggunakan satu atau lebih pemroses pesan untuk memproses pesan melalui aliran. Tugas utama pengolah pesan adalah untuk mengubah, memfilter, memperkaya, dan memproses pesan saat melewati aliran Mule.

Kategorisasi Prosesor Mule

Berikut adalah kategori Prosesor Mule, berdasarkan fungsinya -

  • Connectors- Prosesor pesan ini mengirim dan menerima data. Mereka juga memasukkan data ke sumber data eksternal melalui protokol standar atau API pihak ketiga.

  • Components - Pemroses pesan ini bersifat fleksibel dan menjalankan logika bisnis yang diimplementasikan dalam berbagai bahasa seperti Java, JavaScript, Groovy, Python, atau Ruby.

  • Filters - Mereka memfilter pesan dan hanya mengizinkan pesan tertentu untuk terus diproses dalam alur, berdasarkan kriteria tertentu.

  • Routers - Pemroses pesan ini digunakan untuk mengontrol aliran pesan ke rute, urutan ulang, atau pemisahan.

  • Scopes - hei pada dasarnya membungkus potongan kode untuk tujuan mendefinisikan perilaku terperinci dalam aliran.

  • Transformers - Peran trafo adalah mengubah jenis muatan pesan dan format data untuk memfasilitasi komunikasi antar sistem.

  • Business Events - Mereka pada dasarnya menangkap data yang terkait dengan indikator kinerja utama.

  • Exception strategies - Pemroses pesan ini menangani kesalahan jenis apa pun yang terjadi selama pemrosesan pesan.