Selasa, 27 Maret 2018

Fungsi Cloud Portabel untuk Aplikasi Perangkat Lunak Kedepan-Bukti

Teknologi anak bangsa -- Sejak dimulainya komputasi awan sebagai fenomena luas lebih dari satu dekade yang lalu, masalah API dan variasi struktur data di seluruh penyedia layanan telah menjadi penghalang utama bagi aplikasi multi-cloud.Bahkan dalam layanan terbaru seperti penawaran Function-as-a-Service (FaaS) untuk membangun apa yang disebut aplikasi tanpa server, masalah ini berulang dengan masing-masing penyedia mendorong untuk antarmuka manajemen mereka sendiri dan definisi fungsi yang diterima.Yessica Bogado dan Walter Benítez dari Itaipu Technology Park, saat ini mengunjungi Lab Prototyping Service di Zurich University of Applied Sciences, adalah salah satu peneliti aktif yang menangani masalah praktis seperti itu dari perspektif aplikasi perangkat lunak rekayasa berdasarkan microservices.Dalam sistem terdistribusi taman dan tim riset komputasi paralel yang dipimpin oleh Fabio López Pires, mereka menyaksikan langsung peningkatan masalah perangkat lunak dan penyedia layanan lokal untuk mengikuti tren cloud.

Teknologi anak bangsa -- Perkakas yang tepat bisa tOleh karena itu, bantu untuk mengatasi masalah ini.Posting blog ini menjelaskan salah satu alat tersebut, konverter FaaS, yang telah muncul dari riset terapan mereka.FaaS secara luas dianggap dan didukung oleh industri untuk menjadi salah satu teknologi penerapan aplikasi cloud utama yang akan sangat mempengaruhi realisasi aplikasi berorientasi-microservice, terutama aplikasi cloud-native yang mengintegrasikan pertimbangan ekonomi yang sudah ada dalam fase desain terlepas dari karakteristik teknis.Kedewasaan penuh dalam arti aplikasi cloud-native yang bebas penyedia dan independen adalah langkah logis berikutnya dalam penelitian multi-cloud dan membutuhkan alat yang tepat yang kami kembangkan dalam inisiatif penelitian Perkakas Layanan.

Teknologi anak bangsa -- Sementara alat seperti snafu-import atau Serverless Framework menangani dukungan multi-cloud di sisi manajemen fungsi cloud, konverter FaaS berfokus pada definisi fungsi sintaksis.Ini memeriksa deklarasi fungsi dan memastikan kompatibilitas dengan penyedia FaaS olehmenghasilkan atau mengubah kode sesuai kebutuhan.Dalam tahap ini, konverter FaaS adalah pustaka Python prototipe dengan klien baris perintah yang hanya mencakup fungsi Python, meskipun direncanakan untuk memperluasnya ke bahasa lain (terutama, karena popularitas, JavaScript) dalam waktu dekat.Anda sudah dapat mengunduhnya dari Git dan dari PyPI.

Teknologi anak bangsa -- Heterogenitas syntactic fungsi-fungsi cloud telah didokumentasikan sejak dini.Masalah ini mencakup parameter dan nama fungsi yang dibolehkan terpisah dari nama default ketika tidak dikonfigurasi sebaliknya (jika mungkin sama sekali).Gambar berikut menunjukkan fungsi yang sama dalam bentuk yang diharapkan oleh berbagai lingkungan dan penyedia runtime.Ide fungsi portabel juga telah didokumentasikan selama beberapa waktu.

Teknologi anak bangsa -- Kami mengklaim telah menjadi yang pertama untuk menggambarkan konsep tetapi sejauh ini diperlukan upaya implementasi manual untuk mencapai portabilitas.Dengan konverter FaaS, kita sekarang dapat mengotomatiskan proses dan juga meningkatkan alat seperti itusebagai trafo Lambada dengan menambahkan dukungan multi-cloud (berpotensi penata pengatur) dalam waktu dekat.Selain itu, sintaks fungsi sintaks Snafu saat ini, yang digunakan untuk membatasi set fungsi yang dimuat saat dijalankan di bawah konvensi pemanggilan tertentu (lambda, openwhisk), dapat menggunakan deteksi tanda tangan fungsi heuristik dalam pustaka konverter FaaS saat matang.Konverter memuat file sumber dan menulis kembali file yang diubah, dengan kata lain, ia melakukan analisis sintaksis statis dan transformasi dibandingkan dengan yang dinamis yang untuk beberapa bahasa pemrograman, termasuk Python, akan menjadi pendekatan alternatif dan mungkin ditambahkan kemudian.

Teknologi anak bangsa -- Dari perspektif desain, konversi terdiri dari dua fase: Deteksi format asal dan konversi ke dalam format target yang diinginkan, per fungsi.Konversi berfungsi dalam dua mode, mode "hanya menambahkan pembungkus" dan mode penulisan ulang fungsi lengkap.Selanjutnya, output dapat dipilih untuk dikelompokkan menjadi satu file atau dibagi menjadi sefile parate.Namun, mengingat semakin banyaknya penyedia layanan, semakin banyak nama fungsi yang saling bertentangan, sehingga sekarang output bersama menonaktifkan beberapa fungsi wrapper dengan mengorbankan yang lain.

Teknologi anak bangsa -- Proses konversi itu sendiri juga tidak sepele.Sebagai contoh, AWS Lambda menawarkan parameter konteks yang berguna, ketika hadir dalam fungsi sumber, perlu ditambahkan sebagai implementasi ulang dalam target sehingga fungsi yang bergantung pada misalnya hitungan mundur dari waktu eksekusi yang tersisa akan terus bekerja.Parameter dan nilai kembali perlu dibungkus untuk mematuhi konvensi pemanggilan.Deteksi format heuristik karena kombinasi konvensi penamaan untuk kedua fungsi itu sendiri dan parameternya.

Teknologi anak bangsa -- Cuplikan skrip berikut ini adalah panduan pemula langkah demi langkah untuk menggunakan alat dengan fungsi contoh sederhana.$ pip3 menginstal faas-converter $ # Jalankan konverter pada implementasinya sendiri $ ~on3.5 / site-packages / faas_converter / faasconverter.py »» Faasconverter: modul trek: ...»» Faasconverter: fungsi konversi check_line (string, f) »» Faasconverter: dikonversi menjadi modul: check_line_aws_portable.py ...# Pembungkus FaaS-Converter untuk aws def lambda_handler (acara, konteks): return check_line (event ['string'], event ['f']) # Periksa hasilnya $ ls -l * _portable.py ...

Teknologi anak bangsa -- # Belajarlah lagi $ w3m Teknologi anak bangsa Kami berharap bahwa alat ini berguna bagi pengembang perangkat lunak di luar sana, terlepas dari sifat prototipe awal, dan ingin mendengar umpan balik dalam mengejar arah ini di masa depan.Apakah Anda memiliki kebutuhan praktis (misalnya penyertaan sebagai plugin ke kerangka Serverless, transformasi testcase otomatis, ...?) Apakah Anda melihat tantangan penelitian yang menarik seputar topik interoperabilitas dan standar untuk aplikasi cloud-native yang dibangun dengan microservices.Silakan tinggalkan komentar untuk setiap pendapat atau saran.

Tidak ada komentar:

Posting Komentar