13 Πλαίσια για τη δημιουργία εφαρμογών χωρίς διακομιστή

Είστε ενθουσιασμένοι με την τεχνολογία χωρίς διακομιστή; Θέλετε να πάρετε τα χέρια σας για ένα νέο έργο, αλλά δεν είστε σίγουροι από πού να ξεκινήσετε;

Ακολουθεί μια σύνοψη των πιο δημοφιλών πλαισίων χωρίς διακομιστή που μπορείτε να βρείτε στα χέρια σας!

Η χρήση υπολογιστών χωρίς διακομιστή είναι πολύ δημοφιλής σε όσους αγαπούν την ιδέα να πρέπει να διαχειρίζονται λιγότερα ενώ έχουν χρόνο να δημιουργούν περισσότερα. Και παρόλο που η τεχνολογία είναι ακόμα αρκετά νέα, πολλοί προγραμματιστές και μηχανικοί καταβάλλουν κάθε δυνατή προσπάθεια για να δημιουργήσουν συναρπαστικές λύσεις για το μέλλον των λειτουργιών χωρίς διακομιστή.

Όπως είμαι βέβαιος ότι γνωρίζετε ήδη, χωρίς διακομιστή δεν σημαίνει ακριβώς χωρίς διακομιστή. Σημαίνει απλώς λιγότερους διακομιστές και περισσότερες λειτουργίες. Και αν ψάχνετε για μια αξιόπιστη πλατφόρμα FaaS (Λειτουργίες ως Υπηρεσία) για το επόμενο έργο σας, ελέγξτε την προηγούμενη σύνταξη των καλύτερων πλατφορμών υπολογιστών χωρίς διακομιστή.

Τούτου λεχθέντος, ας ρίξουμε μια ματιά στα πλαίσια που είναι διαθέσιμα σε εμάς. Θα ολοκληρώσουμε τα πράγματα με μερικά συναρπαστικά έργα που αναπτύσσονται στον χώρο χωρίς διακομιστή, γι’ αυτό φροντίστε να μένετε δίπλα σας!

AWS Amplify

Δημιουργήστε επεκτάσιμες εφαρμογές χωρίς διακομιστή γρήγορα για ιστό και κινητά με AWS Amplify πλαίσιο και αποκτήστε ατελείωτη ευελιξία. Διαμορφώστε τα backend χωρίς διακομιστή με δεδομένα, αποθήκευση, έλεγχο ταυτότητας και πολλά άλλα χρησιμοποιώντας έξυπνες ροές εργασίας.

Συνδέστε εφαρμογές για κινητά και ιστό με υπάρχοντες ή νέους πόρους AWS με λιγότερες γραμμές κώδικα. Μπορείτε να φιλοξενήσετε και να αναπτύξετε εφαρμογές ιστού μίας σελίδας, εφαρμογές απόδοσης από την πλευρά του διακομιστή και ιστότοπους κατάστασης με λίγα κλικ. Σας επιτρέπει επίσης να διαχειρίζεστε εύκολα τους χρήστες περιεχομένου και εφαρμογών.

Το AWS Amplify βοηθά τους προγραμματιστές διεπαφής κινητών και ιστού να δημιουργούν πιο γρήγορα εφαρμογές πλήρους στοίβας στο AWS και να προσαρμόζουν την εφαρμογή όποτε το χρειάζεστε. Το Amplify υποστηρίζει πολλά πλαίσια ιστού όπως React, Angular, JavaScript, Vue.js, Next.js κ.λπ., και πλατφόρμες για κινητές συσκευές όπως iOS, Ionic, Flutter, Android και React Native.

Μπορείτε να ενσωματώσετε πολλά στοιχεία διεπαφής χρήστη του Amplify για να επιταχύνετε την ανάπτυξη εφαρμογών. Αποκτήστε πολλές δυνατότητες και εργαλεία όπως έλεγχος ταυτότητας, αλληλεπιδράσεις, λειτουργίες, DataStore, διαχείριση χρηστών, API (REST, GraphQL), Analytics, προβλέψεις AI/ML, αποθήκευση, PubSub, ειδοποιήσεις push κ.λπ., για ανάπτυξη. Επιπλέον, έχετε Managed Hosting, προεπισκοπήσεις PR, CI/CD, προσαρμοσμένους τομείς και παρακολούθηση για ανάπτυξη.

Στα μισά του δρόμου

Αποκτήστε το πλαίσιο χωρίς διακομιστή Node.js για τη δημιουργία παραδοσιακών εφαρμογών από την πλευρά του διακομιστή, μικρών προγραμμάτων, μικροϋπηρεσιών και δημιουργίας υπηρεσιών χωρίς διακομιστή με Στα μισά του δρόμου. Είναι γραμμένο σε γραφομηχανή που χρησιμοποιεί έναν μηχανισμό έγχυσης IoC για να διαχωρίσει τη λογική της εφαρμογής και να κάνει την ευκολότερη ανάπτυξη των μεγάλων εφαρμογών Node.js πιο φυσική.

Η Midway μπορεί να χρησιμοποιήσει express, EggJS ή koa ως βασικά πλαίσια. Παρέχει βασικές λύσεις όπως GRPC, Dubbo.js, RabbitMQ και Socket.io για ανεξάρτητη χρήση. Επιπλέον, το Midway λειτουργεί ως πλαίσιο web χωρίς διακομιστή Node.js για προγραμματιστές full-stack ή front-end.

Το Midway σάς επιτρέπει να δημιουργείτε εφαρμογές επόμενης γενιάς που τρέχουν σε κοντέινερ, VM, Alibaba Cloud, AWS και Tencent Cloud. Μπορείτε επίσης να το ενσωματώσετε εύκολα με το Vue και το React. Θα βρείτε πολλά χαρακτηριστικά όπως:

  • Ομαδικά και επεκτάσιμα πρόσθετα
  • Προηγμένη ομάδα Middleware συμβατότητα και αρχιτεκτονική
  • Δυνατότητα αποσύνδεσης και διαστρωμάτωση εφαρμογών
  • Εμπειρία ανάπτυξης επόμενης γενιάς
  • Υποστηρίζει ενδιάμεσο λογισμικό koa και πρόσθετα Egg.
  Πώς να παίξετε το "Super Smash Bros. Melee" στο διαδίκτυο (με το Slippi)

Webiny

Αποκτήστε όλα όσα χρειάζεστε για την αρχιτεκτονική, την ανάπτυξη και τη δημιουργία εφαρμογών χωρίς διακομιστή με το Webiny Πλαίσιο εφαρμογής χωρίς διακομιστή. Είναι σχεδιασμένο για διαφορετικές περιπτώσεις χρήσης. Μπορείτε να τροποποιήσετε την αρχιτεκτονική, τη στοίβα τεχνολογίας και να προσαρμοστείτε στις ανάγκες του οργανισμού και του έργου σας.

Δημιουργήστε επαγγελματικούς ιστότοπους και εφαρμογές με βάση το SEO, τη δρομολόγηση, την προαπόδοση, την ασφάλεια, την ανάπτυξη, τη ομαδοποίηση και πολλά άλλα. Δημιουργήστε εσωτερικά ή εξωτερικά API εξάγοντας τους αναλυτές GraphQL. Μην περιορίζεστε με μία μόνο εφαρμογή. δημιουργία εφαρμογών που χρησιμοποιούν διάφορες βάσεις δεδομένων. Μπορείτε να χρησιμοποιήσετε τα προγράμματα οδήγησης βάσης δεδομένων NodeJS για αλληλεπίδραση με εξωτερικές βάσεις δεδομένων.

Το Webiny παρέχει ομαδοποίηση κώδικα, IaC, μηχανισμούς ανάπτυξης και οργάνωση έργου. Προσθέστε το προϊόν στην κορυφή της λίστας και προσφέρετε το SaaS σε ολόκληρο τον κόσμο. Ασφαλίστε το μέρος ή το σύνολο των εφαρμογών με ACL με τη βοήθεια του ενσωματωμένου AWS Cognito και του πλαισίου ασφαλείας.

Προσθέστε υποστήριξη για Auth0, OKTA και άλλα. Θα λάβετε χωρίς κεφάλι CMS, πρόγραμμα δημιουργίας σελίδων, πρόγραμμα δημιουργίας φορμών, διαχείριση αρχείων και πολλά άλλα. Δημιουργήστε κώδικα boilerplate χρησιμοποιώντας πρόσθετα CLI από τις συναρτήσεις λάμδα στα νέα GraphQL API.

Η διεπαφή χρήστη διαχειριστή του Webiny περιέχει περισσότερα από τριάντα διαφορετικά στοιχεία React. Θα λάβετε επίσης προστασία DDoS, CDN και ανθεκτικότητα των δεδομένων του 11 9. Το Webiny εξοικονομεί χρόνο σε δοκιμή και σφάλμα και έρευνα.

Δισκοπότηρο AWS

Ψάχνετε για ένα πλαίσιο για τη σύνταξη εφαρμογών χωρίς διακομιστή στην Python;

Προσπαθήστε Δισκοπότηρο AWS που σας επιτρέπει να δημιουργείτε και να αναπτύσσετε εφαρμογές μέσω του AWS Lambda.

Το Chalice παρέχει ένα εργαλείο γραμμής εντολών για τη δημιουργία, την ανάπτυξη και τη διαχείριση της εφαρμογής σας, ένα API που βασίζεται σε διακοσμητές για ενσωμάτωση με το Amazon S3, το Amazon API Gateway, το Amazon SQS, το Amazon SNS και περισσότερες υπηρεσίες AWS.

Σας επιτρέπει να δημιουργείτε API REST, να εκτελείτε εργασίες που εκτελούνται περιοδικά, να συνδέετε λειτουργίες λάμδα με ένα συμβάν S3 και μια ουρά SQS και περισσότερους πόρους AWS. Μόλις γράψετε τον κωδικό σας, το Chalice θα σας επιτρέψει να εκτελέσετε και να αναπτύξετε την εφαρμογή σας γρήγορα. Το Chalice υποστηρίζει κάθε έκδοση της Python που υποστηρίζει το AWS Lambda, συμπεριλαμβανομένων των Python 2.7, 3.6, 3.7 και 3.8.

Διαμορφώστε όλα τα διαπιστευτήρια πριν από την ανάπτυξη της εφαρμογής. Αλλά αν το έχετε ήδη διαμορφώσει ώστε να εκτελεί το AWS CLI ή το boto3, παραλείψτε το. Μετά την ανάπτυξη, μπορείτε να κάνετε τροποποιήσεις όπου χρειάζεστε και να επανατοποθετήσετε τις αλλαγές. Πάρτε μαθήματα, θέματα και αναφορές API για μια καλύτερη έκδοση των γνώσεών σας.

Ζάπα

Ζάπα είναι ένα πλαίσιο χωρίς διακομιστή για τη δημιουργία εφαρμογών Python. Κάνει τη δουλειά πιο εύκολη στη δημιουργία και την ανάπτυξη εφαρμογών Python χωρίς διακομιστή και συμβάντων στο API Gateway και στο AWS Lambda. Χρησιμοποιήστε το για να απολαύσετε μηδενική συντήρηση, μηδενικό χρόνο διακοπής λειτουργίας και άπειρη κλιμάκωση με ελάχιστο κόστος από τις τρέχουσες αναπτύξεις.

Πριν πάτε για εγκαταστάσεις και διαμορφώσεις, βεβαιωθείτε ότι έχετε Python 3.x και έναν λογαριασμό AWS και σωστή εγκατάσταση του αρχείου διαπιστευτηρίων AWS. Μπορείτε επίσης να εγκαταστήσετε το Zappa εύκολα χρησιμοποιώντας το pip.

Το Zappa ρυθμίζει αυτόματα τις ρυθμίσεις ανάπτυξης. Αφού διαμορφωθούν σωστά οι ρυθμίσεις, αναπτύξτε την εφαρμογή σε ένα στάδιο παραγωγής σε μία γραμμή εντολών. Χρησιμοποιήστε την εντολή template εάν θέλετε το πρότυπο API Gateway CloudFormation. Αναπτύξτε το Zappa σε προσαρμοσμένους υποτομείς και ονόματα τομέα με πιστοποιητικά SSL, πιστοποιητικά Διαχείρισης πιστοποιητικών AWS και πιστοποιητικά Let’s Encrypt.

  Πώς να αποκτήσετε νεότερο λογισμικό στο Debian Stable

Ενεργοποιήστε τα ασφαλή τελικά σημεία στην πύλη API, όπως το κλειδί API, την πολιτική IAM, τους εξουσιοδοτητές Lambda της πύλης API, τον Εξουσιοδοτητή συγκέντρωσης χρηστών Cognito και την Πολιτική πόρων της πύλης API. Επιπλέον, μπορείτε να ορίσετε μεταβλητές περιβάλλοντος όπως τοπικό περιβάλλον, απομακρυσμένο περιβάλλον AWS και απομακρυσμένο περιβάλλον μέσω του αρχείου S3,

Αρχιτέκτονας

Δημιουργήστε, αναπτύξτε και διατηρήστε υποδομή χωρίς διακομιστή που βασίζεται σε λειτουργίες cloud επόμενης γενιάς με πλήρεις τοπικές ροές εργασίας εκτός σύνδεσης και πολλά άλλα.

Αυτό είναι ένα αρκετά περίπλοκο έργο και απαιτεί να το διαβάσετε τη φιλοσοφία του έργου και τη σελίδα τεκμηρίωσης ως σύνολο.

Πάνω

Πάνω είναι ένα πλαίσιο που σας βοηθά να αναπτύξετε εφαρμογές χωρίς διακομιστή με άπειρες δυνατότητες επεκτασιμότητας. Επιπλέον, μπορείτε να χρησιμοποιήσετε το Up για να αναπτύξετε στατικούς ιστότοπους, API και άλλα. Όλα αυτά σας δίνουν την ευελιξία να εργαστείτε σε ό,τι πραγματικά έχει σημασία για εσάς.

Ευτυχώς, το Up αναπτύσσει παραδοσιακές παρουσίες διακομιστή HTTP, επομένως δεν σας ζητείται να μάθετε κάποιο νέο πρωτόκολλο. Αντίθετα, χρησιμοποιήστε το αγαπημένο σας πλαίσιο όπως το Django ή το Express για να ξεκινήσετε.

Claudia.js

Claudia.js δίνει στους προγραμματιστές ένα μέσο για να προωθήσουν τα έργα τους που βασίζονται στο Node.js στα συστήματα Lambda και στο API. Η Claudia θα αυτοματοποιήσει τις εργασίες ανάπτυξης, τη διαμόρφωση και θα ρυθμίσει αυτόματα το περιβάλλον JavaScript για σύγχρονη ανάπτυξη.

Λοιπόν, τι σημαίνει αυτό για εσάς; Χρησιμοποιώντας την Claudia, μπορείτε να ξεκινήσετε το ταξίδι σας με τις μικροϋπηρεσίες μέσα σε λίγα λεπτά. Ως αποτέλεσμα, έχετε πολύ λιγότερα για να σκεφτείτε και πολύ περισσότερο χρόνο για να εστιάσετε στην επίλυση πραγματικών προβλημάτων.

Οι κύριοι λόγοι για να χρησιμοποιήσετε την Claudia περιλαμβάνουν:

  • Ανάπτυξη, ενημέρωση και διαχείριση των παρουσιών σας με μία μόνο εντολή
  • Λειτουργεί άψογα με πακέτα NPM
  • Ενσωματωμένη δομή λέβητα, που σας δίνει περισσότερο χώρο για να εστιάσετε στις εργασίες σας.
  • Διαχείριση εκδόσεων, ώστε να μπορείτε να εργάζεστε σε πολλές εκδόσεις ταυτόχρονα
  • Μικρή καμπύλη μάθησης

Τζετ

Αγαπάτε τη Ruby;

Τότε μπορεί να βρείτε τον εαυτό σας να απολαμβάνει Τζετ — ένα Ruby Framework χωρίς διακομιστή για τη δημιουργία και την ανάπτυξη μικροϋπηρεσιών. Το πλαίσιο περιλαμβάνει όλα τα απαραίτητα εργαλεία που θα σας βοηθήσουν να δημιουργήσετε δομές API και να τις αναπτύξετε Λάμδα.

Τζετ λειτουργεί επίσης για τη σύνταξη ξεχωριστών λειτουργιών που μπορείτε να χρησιμοποιήσετε για να συνδυάσετε διαφορετικές υπηρεσίες και πόρους που παρέχονται από το AWS.

Ο τρόπος που λειτουργεί το Jets είναι ότι το πλαίσιο μετατρέπει τον υπάρχοντα κώδικα σε συναρτήσεις για το Lambda και άλλες υπηρεσίες AWS. Ως αποτέλεσμα, μπορείτε να παραλείψετε πράγματα όπως η ανάπτυξη και η παροχή για να αφιερώσετε περισσότερο χρόνο στη σύνταξη λειτουργικού κώδικα.

Πουλούμι

Πουλούμι παρέχει ένα απρόσκοπτο SDK για να σας βοηθήσει να δημιουργήσετε και να αναπτύξετε λογισμικό σε οποιαδήποτε πλατφόρμα που βασίζεται σε cloud. Το SDK υποστηρίζει κοντέινερ, φιλοξενούμενες υπηρεσίες, βασική υποδομή και κοντέινερ.

Μπορείτε να γράψετε κώδικα σε οποιαδήποτε γλώσσα θέλετε. Η Pulumi θα παρέχει και θα διαχειρίζεται τους πόρους σας σε παρόχους υπηρεσιών όπως το GCP, το AWS, το Kubernetes και το Azure.

Χωρίς διακομιστή

Ξέρω τι σκέφτεστε, «Κάποιος είχε την τύχη να πάρει το όνομα τομέα Serverless.com και απλώς εξαργυρώνουν την τύχη τους!», και πρέπει να σας πω ότι αυτό δεν ισχύει.

  Λάβετε καθοδηγούμενες οδηγίες επί της οθόνης για να συνθέσετε μια καλύτερη φωτογραφία

Το πλαίσιο χωρίς διακομιστή έχει μερικά 30.000 αστέρια στο GitHubκαθιστώντας αυτό το πιο δημοφιλές πλαίσιο χωρίς διακομιστή μπορείς να βρεις.

Λοιπόν, τι μπορείτε να κάνετε με αυτό το πλαίσιο; Πρώτα και κύρια, μπορείτε να δημιουργήσετε εφαρμογές που χρησιμοποιούν μικροϋπηρεσίες ως μέσο για να ανταποκρίνονται σε συμβάντα κ.λπ. Π.χ., οι εφαρμογές σας ανταποκρίνονται μόνο όταν υπάρχει οριστική κλήση και να κλιμακώνονται προς τα πάνω και προς τα κάτω με βάση τη ζήτηση. Ως αποτέλεσμα, μπορείτε να εξοικονομήσετε έναν τόνο χρημάτων που διαφορετικά θα ξοδεύονταν για τη συντήρηση των υπηρεσιών αδράνειας.

Το Framework χρησιμοποιεί νέες υπολογιστικές υπηρεσίες που βασίζονται σε συμβάντα, όπως το AWS Lambda, το Google Cloud Functions και άλλα. Είναι ένα εργαλείο γραμμής εντολών, που παρέχει σκαλωσιές, αυτοματοποίηση ροής εργασιών και βέλτιστες πρακτικές για την ανάπτυξη και την ανάπτυξη της αρχιτεκτονικής σας χωρίς διακομιστή. Είναι επίσης πλήρως επεκτάσιμο μέσω plugins.

Sigma

Sigma είναι ένα νέο IDE που βασίζεται σε σύννεφο που βασίζεται στην ιδέα της Ανάπτυξης χωρίς Διακομιστές. Αυτό δεν είναι απλώς ένα βασικό πρόγραμμα επεξεργασίας κειμένου με μερικές φανταχτερές δυνατότητες, αλλά ένα πλήρως εξοπλισμένο IDE που θα σας επιτρέψει να γράψετε κώδικα και να δημοσιεύσετε αυτόν τον κώδικα ως ζωντανή εφαρμογή σε πραγματικό χρόνο.

Το Sigma IDE μπορεί να μιλήσει εμπρός και πίσω με την επιλεγμένη πλατφόρμα χωρίς διακομιστή (FaaS) και μόνο με την απαίτηση ενός αρχείου διαμόρφωσης. Ως αποτέλεσμα, μπορείτε να εξοικονομήσετε ατελείωτες ώρες από κατά τα άλλα βαρετές εργασίες.

Επίσης, σε αντίθεση με άλλα εργαλεία που προσπαθούν να επιτύχουν παρόμοιο αποτέλεσμα — το Sigma είναι το ίδιο χωρίς διακομιστή. Το IDE εκτελείται εξ ολοκλήρου μέσα από το πρόγραμμα περιήγησης και δεν απαιτεί να λειτουργεί μια υπηρεσία back-end για όλες εκτός από μερικές λειτουργίες. Συγκεκριμένα, το back-end απαιτείται για τον έλεγχο ταυτότητας των χρηστών και τη συλλογή αναλυτικών δεδομένων.

Αυτό αξίζει να το παρακολουθείτε και αξίζει να το δοκιμάσετε μόνοι σας.

Auth0

Εάν είστε παθιασμένοι με την έννοια του Serverless, τότε πιθανότατα θα έχετε ακούσει για το Serverless Framework — αυτό που αναφέραμε νωρίτερα στο άρθρο.

Auth0 έχει συγκεντρώσει τις προσπάθειές της για τη δημιουργία εργασιών Web Auth0, ένα αποτελεσματικό πρόσθετο για όλους εσάς τους χρήστες του Πλαισίου χωρίς διακομιστή. Το έργο ονομάζεται Webtask και μπορείτε να βρείτε την αρχική σελίδα εδώ.

Στην ουσία, το Webtask μπορεί να χρησιμοποιηθεί δημιουργήστε εφαρμογές χωρίς να χρειάζεται να ανησυχείτε για την υποδομή σας συμβατότητα. Γράψτε λογική από την πλευρά του διακομιστή και αναπτύξτε όλες τις λειτουργίες σας χρησιμοποιώντας το CLI που παρέχεται από το Webtask. Στη συνέχεια, μπορείτε να πλοηγηθείτε στο back-end χρησιμοποιώντας το πρωτόκολλο HTTP.

Ενημέρωση: Ο ιστότοπος Webtask έκτοτε έχει κλείσει.

Παραδείγματα χωρίς διακομιστή

Μιλήσαμε για το Πλαίσιο χωρίς διακομιστή νωρίτερα στην ανάρτηση, και βασικά, αυτός είναι ένας πόρος παρακολούθησης που παρουσιάζει τα πολλά διαφορετικά χρησιμοποιήστε περιπτώσεις για το πλαίσιο χωρίς διακομιστή.

Παρά το γεγονός ότι αυτά τα παραδείγματα είναι κλειδωμένα σε ένα συγκεκριμένο πλαίσιο, μπορείτε ακόμα να απολαύσετε τη διαδικασία εκμάθησης για νέες έννοιες χωρίς διακομιστή.

Τα παραδείγματα είναι διαθέσιμα για πλατφόρμες όπως το AWS, το Azure, το Kubeless, το Google Cloud και το OpenWhisk. Επιπλέον, υπάρχει υποστήριξη για έξι διαφορετικές γλώσσες: nodeJS, Python, Go, Java, PHP και Swift.

Δείτε μερικά από αυτά τα αγαπημένα όπως Twitter Joke Bot και OAuth Dropbox API.

Αν ψάχνετε για πρακτική μάθηση, τότε ελέγξτε αυτό διαδικτυακό μάθημα.