Το Cloudflare κυκλοφόρησε τον πηγαίο κώδικα του Pingora, ένα πλαίσιο γραμμένο σε Rust για τη δημιουργία υπηρεσιών δικτύου

Pingora

Πανό Pingora

πριν ΛΙΓΕΣ μερες Αποκαλύφθηκε το Cloudflare, μέσω ανάρτησης ιστολογίου, την απόφασή της να κυκλοφορήσει τον πηγαίο κώδικα του πλαισίου «Pingora», ειδικά σχεδιασμένο για ανάπτυξη ασφαλών και υψηλής απόδοσης υπηρεσιών δικτύου, καθώς και προγραμματιζόμενα συστήματα δικτύου στη γλώσσα Rust.

Αυτό το πλαίσιο παρέχει εξωγενή πακέτα Rust που διευκολύνουν τη δημιουργία ενός διακομιστή μεσολάβησης HTTP, εργασία με πρωτόκολλα δικτύου, ανάλυση κεφαλίδων HTTP, λογιστική και περιορισμός κίνησης, εξισορρόπηση φορτίου, διαχείριση κατανεμημένου πίνακα κατακερματισμού Ketama, διατήρηση κρυφής μνήμης στη μνήμη RAM και ασύγχρονη επεξεργασία χρονικών ορίων. Εκτός από την υποστήριξη για HTTP, το Pingora επιτρέπει τη δημιουργία υπηρεσιών χρησιμοποιώντας τα δικά του πρωτόκολλα ή UDP/TCP.

Τι είναι το Pingora;

Το Pingora είναι ένα ασύγχρονο πολυνηματικό πλαίσιο Rust που έχει σχεδιαστεί για τη δημιουργία υπηρεσιών διακομιστή μεσολάβησης HTTP με ασφάλεια και αποτελεσματικότητα.. Από την κυκλοφορία του, το Pingora έχει δοκιμαστεί εκτενώς και χρησιμοποιείται σε συστήματα υψηλού φορτίου, όπως ένας διακομιστής μεσολάβησης που χρησιμοποιείται στο δίκτυο παράδοσης περιεχομένου του Cloudflare, επεξεργαζόμενος πάνω από 40 εκατομμύρια αιτήματα ανά δευτερόλεπτο για περισσότερο από ένα χρόνο.

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

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

Μεταξύ βασικά οφέλη του Pingora, ξεχωρίζουν τα ακόλουθα:

  1. Ασφάλεια μνήμης: Το Pingora προσφέρει μια εναλλακτική λύση πιο ασφαλή για τη μνήμη σε σύγκριση με υπηρεσίες γραμμένες σε C/C++. Αυτό οδηγεί σε μικρότερη πιθανότητα σφαλμάτων κωδικοποίησης που θα μπορούσαν να θέσουν σε κίνδυνο την ασφάλεια του συστήματος.
  2. Βελτιστοποιημένη απόδοση: Χάρη στην πολυνηματική αρχιτεκτονική του, το Pingora είναι γρήγορο και αποτελεσματικό, εξοικονομώντας πόρους CPU και μνήμης. Αυτό είναι ιδιαίτερα επωφελές για φόρτους εργασίας που είναι ευαίσθητοι στην απόδοση και το κόστος.
  3. Προηγμένη προσαρμογή: Τα API που παρέχονται από το Pingora είναι εξαιρετικά προγραμματιζόμενα, επιτρέποντας εκτεταμένη προσαρμογή για τη δημιουργία προσαρμοσμένων και προηγμένων πυλών ή εξισορροπητών φορτίου.

Pingora προσφέρει πολλά βασικά χαρακτηριστικά, όπως η πολυνηματική επεξεργασία αιτημάτων σε ασύγχρονη λειτουργία, υποστήριξη για HTTP/1 και HTTP/2 (με σχέδια για HTTP/3), διακομιστή μεσολάβησης gRPC και WebSocket, εξισορροπητές φορτίου με δυνατότητα σύνδεσης, αλλαγή διαμόρφωσης χωρίς επανεκκίνηση, ενημέρωση κώδικα χωρίς διακοπή συνδέσεων, στρατηγικές εναλλαγής φορτίου σε περίπτωση αποτυχίας (αποτυχία) ενοποίηση με συστήματα παρακολούθησης και καταγραφής (όπως Syslog, Prometheus, Sentry, OpenTelemetry) και υποστήριξη για κρυπτογράφηση TLS μέσω των βιβλιοθηκών OpenSSL και BoringSSL C.

Επισημασμένα χαρακτηριστικά Pingora

  • Υποστήριξη για διακομιστή μεσολάβησης HTTP/1 και HTTP/2, gRPC και websocket.
  • Προσαρμόσιμες στρατηγικές εξισορρόπησης φορτίου και ανακατεύθυνσης.
  • Ενσωμάτωση με βιβλιοθήκες OpenSSL και BoringSSL για συμμόρφωση και ασφάλεια.
  • Φίλτρα και επανάκληση για προσαρμογή και επεξεργασία αιτημάτων.
  • Χαριτωμένα επανεκκινήσεις χωρίς χρόνο διακοπής λειτουργίας για απρόσκοπτες ενημερώσεις.
  • Ενσωμάτωση με εργαλεία παρατηρησιμότητας όπως Syslog, Prometheus, Sentry, OpenTelemetry, μεταξύ άλλων.

Τέλος, η Cloudflare αναφέρει ότι συνεργάζεται με το πρόγραμμα Internet Security Research Group (ISRG) Prossimo για να προωθήσει την υιοθέτηση του Pingora σε ζωτικής σημασίας υποδομές Διαδικτύου, συμβάλλοντας έτσι σε ένα πιο ασφαλές και αξιόπιστο Διαδίκτυο για όλους.

Αν είστε ενδιαφέρεται να μάθει περισσότερα για αυτό, θα πρέπει να γνωρίζετε ότι ο κώδικας είναι γραμμένος σε Rust και δημοσιεύθηκε με την άδεια Apache 2.0, μπορείτε επίσης να συμβουλευτείτε τη δημοσίευση του Cloudflare Στον ακόλουθο σύνδεσμο.


Αφήστε το σχόλιό σας

Η διεύθυνση email σας δεν θα δημοσιευθεί. Τα υποχρεωτικά πεδία σημειώνονται με *

*

*

  1. Υπεύθυνος για τα δεδομένα: Miguel Ángel Gatón
  2. Σκοπός των δεδομένων: Έλεγχος SPAM, διαχείριση σχολίων.
  3. Νομιμοποίηση: Η συγκατάθεσή σας
  4. Κοινοποίηση των δεδομένων: Τα δεδομένα δεν θα κοινοποιούνται σε τρίτους, εκτός από νομική υποχρέωση.
  5. Αποθήκευση δεδομένων: Βάση δεδομένων που φιλοξενείται από τα δίκτυα Occentus (ΕΕ)
  6. Δικαιώματα: Ανά πάσα στιγμή μπορείτε να περιορίσετε, να ανακτήσετε και να διαγράψετε τις πληροφορίες σας.