Skip to main content

Τι είναι το fastcgi;

Το FastCGI είναι μια επέκταση της κοινής διασύνδεσης πύλης (CGI) που αναπτύχθηκε από μια εταιρεία που ονομάζεται τώρα Open Market.Το FastCGI είναι ελεύθερα διαθέσιμο ως ανοιχτό πρότυπο.Απευθύνεται σε ορισμένες ελλείψεις στο CGI που περιορίζουν την απόδοση.

Σε αντίθεση με το CGI, το FastCGI δεν δημιουργεί μια νέα διαδικασία για κάθε αίτημα, ελαχιστοποιώντας έτσι το γενικό κόστος της δημιουργίας και της καταστροφής της διαδικασίας κάθε φορά που λαμβάνεται ένα αίτημα.Αυτό το γενικό κόστος μπορεί να καταστρατηγηθεί χρησιμοποιώντας διεπαφές προγράμματος εφαρμογών (API), όπως η διεπαφή προγραμματισμού εφαρμογών NetScape Server (NSAPI) ή η διεπαφή προγραμματισμού εφαρμογών διακομιστή Internet (ISAPI), αλλά επειδή πρόκειται για ιδιόκτητα, υπάρχει μια πρόσθετη καμπύλη μάθησης και περιορισμοί στις υποστηριζόμενες γλώσσεςνα ληφθεί υπόψη.Ένα άλλο κενό του CGI είναι το γεγονός ότι δεν μπορούν να ληφθούν ορισμένες περιπτώσεις επαναχρησιμοποίησης, όπως συνδέσεις με βάσεις δεδομένων ή τεχνικές προσωρινής αποθήκευσης.Η διαχείριση των αιτήσεων μπορεί να φτάσει μέχρι και 30 φορές ταχύτερα χρησιμοποιώντας το FastCGI μέσω του συμβατικού CGI

με FastCGI, πολλαπλά αιτήματα μπορούν να αντιμετωπιστούν μέσω μιας ενιαίας σύνδεσης, η οποία είναι γνωστή ως πολυπλεξία.Εναλλακτικά, μπορούν να χρησιμοποιηθούν πολλαπλές συνδέσεις.Οι αιτήσεις μεταδίδονται χρησιμοποιώντας πρωτόκολλο μεταφοράς αρχείων (FTP) ή υποδοχές.Στη συνέχεια, η ίδια σύνδεση χρησιμοποιείται για την επιστροφή της απόκρισης.

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

Το FastCGI αναπτύχθηκε αρχικά από την Open Market και εφαρμόστηκε στην προσφορά του διακομιστή ιστού.Ωστόσο, η διεπαφή μπορεί να εφαρμοστεί σε οποιοδήποτε διακομιστή, και σύντομα στη θέση του σε διάφορους άλλους διακομιστές ιστού της βιομηχανίας.Το FastCGI είναι ιδιαίτερα συμβατό με την κατανεμημένη υπολογιστική, οπότε μια εφαρμογή FastCGI μπορεί να εκτελείται σε ξεχωριστό διακομιστή στον ιστό.Αυτό προσφέρει όλα τα πλεονεκτήματα της ενίσχυσης της διαθεσιμότητας των συστημάτων, της βελτίωσης της επεκτασιμότητας και της αυξανόμενης ασφάλειας του συστήματος, επειδή τα εξαρτήματα απομονώνονται.Χρησιμοποιώντας το Remote FastCGI, υπάρχει λιγότερη διοίκηση επειδή το εσωτερικό δίκτυο μπορεί να χειριστεί τη λειτουργία εφαρμογών.

Όπως και μια εφαρμογή CGI μπορεί να δημιουργήσει μια απάντηση από ένα αίτημα πρωτοκόλλου μεταφοράς υπερκειμένου (HTTP), έτσι μπορεί και το FastCGI.Διαχειρίζεται επίσης εργασίες, όπως επαλήθευση των τύπων ελέγχου ταυτότητας και μετατροπής των δεδομένων.Αυτά τα καθήκοντα χειρίζονται χρησιμοποιώντας ρόλους, οι οποίοι μπορούν να προστεθούν και να επεκταθούν ελεύθερα.

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