Προγραμματισμός

Το Jaws παίρνει ένα δάγκωμα από την ανάπτυξη της εφαρμογής AWS Lambda

Το νέο πλαίσιο προγραμματισμού ανοιχτού κώδικα Jaws ισχυρίζεται ότι μπορεί να χρησιμοποιηθεί για τη δημιουργία "εφαρμογών χωρίς διακομιστή" στο Amazon AWS Lambda - εφαρμογές που αποτελούνται από λίγο περισσότερο από αποσπάσματα κώδικα που συνδέονται με API, χωρίς επίσημη υποδομή διακομιστή.

Παρουσιάστηκε κατά τη διάρκεια μιας συνεδρίας breakout στο AWS Re: Invent, ο Jaws είναι το πνευματικό τέκνο του προγραμματιστή Austen Collins και του μηχανικού DoApp Ryan Pendergast. Η Jaws αναπτύσσει τον υπάρχοντα κώδικα Node.js ή Java 8 στο AWS Lambda μέσω μιας διεπαφής γραμμής εντολών και επιβάλλει μια κοινή μεθοδολογία δομής και αυτοματισμού στα χρησιμοποιούμενα λάμδα.

Σε μια πλατφόρμα διαφανειών που έγινε δημόσια με τη συνεδρία ξεμπλοκαρίσματος, οι Collins και Pendergast λεπτομερώς ταιριάζουν με το Jaws σε μια σχεδίαση χωρίς διακομιστή, με πολλές από τις λειτουργίες που χειρίζονται συνήθως από έναν αυτόνομο διακομιστή που ανατίθεται σε βοηθητικά προγράμματα AWS. Αντί να ανοίξει έναν πλήρη διακομιστή για να χειριστεί αιτήματα από τον Ιστό, οι εφαρμογές Jaws μπορούν να χρησιμοποιούν το AWS API Gateway ως διεπαφή.

Το Jaws μπορεί επίσης να αξιοποιήσει τους υπάρχοντες πόρους του Amazon για ανάπτυξη και διαχείριση, αντί να προσπαθεί να παρέχει παρόμοιες λειτουργίες από το μηδέν. Αυτό οφείλεται εν μέρει στο Gateway και το Lambda που διαχειρίζονται αυτόματα τον περιορισμό και την κλιμάκωση του ρυθμού, καθώς και τη διαθεσιμότητα καταγραφής και μετρήσεων στην πλατφόρμα AWS. Ωστόσο, η Jaws αξιοποιεί επίσης τα πρότυπα CloudFormation για την ανάπτυξη πόρων, οπότε και πάλι οι δυνατότητες καθορίζονται μέσω ενός μηχανισμού που είναι οικείος στους χρήστες του AWS.

Το Jaws βοηθά επίσης στο κόστος. Τα μαθηματικά για ένα σενάριο 16.000 αιτήσεων ανά ημέρα φτάνουν τα 5 σεντ την ημέρα για μια εφαρμογή Lambda, έναντι 2,97 $ κάθε μέρα για δύο περιπτώσεις EC2 που πληρώνονται ένα χρόνο νωρίτερα. Η ανάπτυξη με "όσο το δυνατόν λιγότερους devops", όπως το έθεσαν οι δημιουργοί του πλαισίου, είναι το δικό της όφελος, καθώς ένας χρήστης Jaws δεν χρειάζεται να συντηρεί διακομιστή ή να διαχειρίζεται υποδομή κοντέινερ.

Μια πιθανή ανησυχία με το Jaws αντικατοπτρίζει περισσότερο το ίδιο το AWS. Δεδομένου ότι το AWS - Lambda, Gateway και όλα - είναι ιδιόκτητο, τα κλειδώματα εφαρμογών θα μπορούσαν να προκύψουν από τη δημιουργία εφαρμογών που βασίζονται σε Lambda με Jaws. Τούτου λεχθέντος, η Jaws διαθέτει άδεια MIT και οι υπηρεσίες της Amazon είναι από τις πιο κατανοητές και πιο μιμημένες (σε επίπεδο API) στην επιχείρηση.

Το Jaws είναι ακόμα σε πρώιμη και πρωτεϊνική κατάσταση, με την τελευταία αναβάθμιση σε 1,3 να σπάει τη συμβατότητα με παλαιότερες εκδόσεις για ορισμένες λειτουργίες. Ένας οδικός χάρτης προϊόντων περιγράφει τις τρέχουσες και τις μελλοντικές (1.4 στοχευμένες) διορθώσεις, με την ομάδα να επικεντρώνεται σε στοιχεία όπως μια καλύτερη ροή εργασίας για το CloudFormations και τις αλλαγές στο REST API μετά την επιστροφή του από το Re: Invent.