Οι έλεγχοι υγείας API είναι απαραίτητοι για τη διασφάλιση της διαθεσιμότητας και της λειτουργικότητας των τελικών σημείων API σας. Σας κρατούν ενήμερους για τη συνολική υγεία του API σας και μπορούν να επισημάνουν τυχόν προβλήματα σε πρώιμο στάδιο.
Τελικά, οι έλεγχοι υγείας API αποτελούν μέρος μιας προληπτικής προσέγγισης για την παρακολούθηση της συνολικής υγείας των API σας. Ισοδυναμεί με το να πηγαίνεις στον οδοντίατρο για τακτικούς ελέγχους αντί να περιμένεις μέχρι να πάει κάτι στραβά με τα δόντια σου και να πονέσεις!
Τι είναι ένας έλεγχος υγείας API;
Ο έλεγχος υγείας API είναι ένας τρόπος ελέγχου της κατάστασης λειτουργίας ενός API. Είναι μια μέθοδος παρακολούθησης που μπορεί να σας ειδοποιήσει όταν κάτι δεν λειτουργεί όπως θα έπρεπε. Μπορείτε να ρυθμίσετε ένα τελικό σημείο ελέγχου υγείας API για κάθε API, να προβάλετε τα αποτελέσματα σε έναν πίνακα εργαλείων και να λαμβάνετε ειδοποιήσεις για μη αναμενόμενα αποτελέσματα.
Η χρήση ενός ελέγχου υγείας τελικού σημείου API σημαίνει ότι μπορείτε να παρακολουθείτε οτιδήποτε θα μπορούσε να εμποδίσει το API σας να εξυπηρετεί τα εισερχόμενα αιτήματα με τον τρόπο που θα έπρεπε. Μπορείτε να ρυθμίσετε αυτές τις υπηρεσίες ελέγχου υγείας ώστε να είναι σχετικές με τα συγκεκριμένα API σας, καθώς αυτό ταιριάζει σε ένα ευρύ φάσμα Αρχιτεκτονικά μοτίβα διαχείρισης και ανάπτυξης API. Για παράδειγμα, ένα τελικό σημείο ελέγχου υγείας θα μπορούσε να παρακολουθεί:
- Διαθεσιμότητα – μια υπηρεσία υγειονομικού ελέγχου μπορεί να στέλνει τακτικά αιτήματα στα τελικά σημεία API για να επαληθεύσει ότι είναι προσβάσιμα.
- Λειτουργικότητα – ένα API ελέγχου υγείας μπορεί να στείλει αιτήματα χρησιμοποιώντας συγκεκριμένες εισόδους για να ελέγξει αυτές τις αναμενόμενες απαντήσεις.
- Απόδοση – Οι έλεγχοι υγείας API μπορούν να παρακολουθούν τους χρόνους απόκρισης, μετρώντας τον λανθάνοντα χρόνο για τον εντοπισμό τυχόν επιβραδύνσεων ή συμφόρησης απόδοσης.
- Ανίχνευση και ανάκτηση σφαλμάτων – ένα υγιές API δεν πρέπει να εμφανίζει σφάλματα και εξαιρέσεις. Ένας έλεγχος υγείας μπορεί να εντοπίσει μια μη φυσιολογική συμπεριφορά όπως αυτή.
- Εξισορρόπηση φόρτου – εάν έχετε πολλές παρουσίες ενός API, μπορείτε να χρησιμοποιήσετε ελέγχους υγείας σε συνδυασμό με έναν εξισορροπητή φορτίου για να διανείμετε τα εισερχόμενα αιτήματα σε υγιείς παρουσίες και να αποφύγετε εκείνα που παρουσιάζουν ανθυγιεινή συμπεριφορά ή δεν ανταποκρίνονται.
Εάν οποιοσδήποτε από αυτούς τους ελέγχους δώσει απροσδόκητα αποτελέσματα, η υπηρεσία υγειονομικού ελέγχου μπορεί να προειδοποιήσει για να σας ενημερώσει. Στη συνέχεια, έχετε τη δυνατότητα να προβείτε σε γρήγορες, έγκαιρες διορθωτικές ενέργειες προτού τα ζητήματα κλιμακωθούν και/ή επηρεάσουν αρνητικά την εμπειρία χρήστη σας.
Ας εξετάσουμε ορισμένες βέλτιστες πρακτικές API ελέγχου υγείας και, στη συνέχεια, εξετάστε τις περιπτώσεις χρήσης για αυτόν τον τύπο παρακολούθησης της υγείας του API.
Βέλτιστες πρακτικές ελέγχου υγείας API
Εάν είστε έτοιμοι να ακολουθήσετε μια προληπτική προσέγγιση για την παρακολούθηση της υγείας των API σας, είναι σημαντικό να το κάνετε με τρόπο που να διασφαλίζει ότι αποκομίζετε το καλύτερο δυνατό από τις υπηρεσίες ελέγχου υγείας. Να πώς.
Αυτοματοποιήστε τους ελέγχους υγείας API
Η αυτοματοποίηση των ελέγχων υγείας του API σημαίνει ότι μπορείτε να εφαρμόσετε συνεχή παρακολούθηση χωρίς την ανάγκη χειροκίνητης παρέμβασης. Μπορείτε να αυτοματοποιήσετε τους τακτικούς ελέγχους και επίσης να αυτοματοποιήσετε τους ελέγχους που πραγματοποιούνται ως απόκριση σε ενεργοποιητές που έχετε προκαθορίσει. Και, φυσικά, μπορείτε να αυτοματοποιήσετε τις ειδοποιήσεις που στέλνει το API ελέγχου υγείας όταν ένας έλεγχος αποτυγχάνει ή επιστρέφει ένα απροσδόκητο αποτέλεσμα.
Ελέγξτε την υγεία του API όσο πιο συχνά γίνεται
Όσο πιο συχνοί είναι οι έλεγχοι σας, τόσο πιο πιθανό είναι να αντιμετωπίσετε προβλήματα προτού κλιμακωθούν σε προβλήματα. Εντοπίζοντας προβλήματα σε πραγματικό χρόνο, μπορείτε να ελαχιστοποιήσετε το χρόνο διακοπής λειτουργίας.
Λάβετε υπόψη, ωστόσο, ότι οι έλεγχοι υγείας θα επιβαρύνουν την υποδομή API σας. Αυτό σημαίνει ότι είναι καλή ιδέα να προσαρμόζετε τη συχνότητα ελέγχου της υγείας του API στη σημασία των διαφορετικών σας API. Όσο πιο κρίσιμο είναι το API, τόσο πιο συχνά θα πρέπει να το ελέγχετε.
Απενεργοποιήστε την προσωρινή μνήμη
Οι έλεγχοι υγείας API λειτουργούν παρακολουθώντας τις απαντήσεις. Ωστόσο, εάν έχετε ενεργοποιήσει τους μηχανισμούς αποθήκευσης στην κρυφή μνήμη, η υπηρεσία υγειονομικού ελέγχου μπορεί να καταλήξει να παράγει ψευδώς θετικά αποτελέσματα ως αποτέλεσμα των αποθηκευμένων αποκρίσεων που καλύπτουν υποκείμενα ζητήματα. Ως εκ τούτου, είναι βέλτιστη πρακτική η απενεργοποίηση των μηχανισμών προσωρινής αποθήκευσης κατά τους ελέγχους υγείας του API.
Σημασία έχει ο χρόνος απόκρισης
Υπάρχουν διάφοροι τρόποι για να αξιοποιήσετε στο έπακρο τους ελέγχους χρόνου απόκρισης. Θα χρειαστεί να ορίσετε όρια χρόνου απόκρισης, για παράδειγμα, για να καθορίσετε πώς φαίνεται το καλό για τα API σας. Μπορείτε επίσης να ενισχύσετε τον αντίκτυπο των ελέγχων χρόνου απόκρισης αναλύοντας τα δεδομένα χρόνου απόκρισης με την πάροδο του χρόνου. Κάτι τέτοιο όχι μόνο μπορεί να σας βοηθήσει να εντοπίσετε τα σημεία συμφόρησης και τις τάσεις απόδοσης, αλλά μπορεί να φέρει στο φως μακροπρόθεσμα ζητήματα υποβάθμισης της απόδοσης.
Απάντηση JSON
Είναι καλή ιδέα να χρησιμοποιήσετε μια τυποποιημένη δομή JSON για την παροχή των πληροφοριών κατάστασης του υγειονομικού ελέγχου και των σχετικών λεπτομερειών. Η ανθρώπινη αναγνωσιμότητα, η ευελιξία, η επεκτασιμότητα, η αποτελεσματική σειριοποίηση και η αποσειριοποίηση και η ευρεία συμβατότητα του JSON το καθιστούν ιδανικό για την επιστροφή των αποκρίσεων του τελικού σημείου ελέγχου υγείας. Η διαμόρφωση του τελικού σημείου του υγειονομικού ελέγχου ώστε να επιστρέφει απαντήσεις σε αυτήν τη μορφή σημαίνει ότι μπορείτε να λαμβάνετε σαφείς, συνοπτικές πληροφορίες σχετικά με την υγεία των κρίσιμων στοιχείων των API σας και την κατάσταση των εξαρτήσεών τους.
Κωδικός κατάστασης απόκρισης
Οι κωδικοί κατάστασης απόκρισης που χρησιμοποιείτε θα διευκολύνουν την επαλήθευση της κατάστασης του API που ελέγχετε. Για παράδειγμα, μπορείτε να χρησιμοποιήσετε έναν κωδικό κατάστασης επιτυχίας (2xx) για να υποδείξετε ότι ένα API λειτουργεί όπως θα έπρεπε και έναν κωδικό κατάστασης σφάλματος (4xx ή 5xx) για να υποδείξετε ότι δεν λειτουργεί.
Εξετάστε το ενδεχόμενο να προστατέψετε το τελικό σημείο του ελέγχου υγείας σας
Όπως συμβαίνει με οποιοδήποτε στοιχείο της υποδομής API σας, είναι σημαντικό να εφαρμόζετε κατάλληλους μηχανισμούς ασφαλείας. Για το τελικό σημείο ελέγχου υγείας του API, μπορείτε να εφαρμόσετε μηχανισμούς ελέγχου ταυτότητας και εξουσιοδότησης για να αποτρέψετε τη μη εξουσιοδοτημένη πρόσβαση. Με αυτόν τον τρόπο, μπορείτε να διασφαλίσετε ότι μόνο τα συστήματα παρακολούθησης που ορίζετε μπορούν να πραγματοποιούν ελέγχους υγείας στα API σας.
Θυμηθείτε να ελέγχετε και να δοκιμάζετε τακτικά τις ρυθμίσεις ασφαλείας σας για να βεβαιωθείτε ότι όλα λειτουργούν όπως θα έπρεπε από την άποψη της ασφάλειας και να διατηρείτε τη συνολική ακεραιότητα της υποδομής σας.
Χρησιμοποιήστε θήκες για παρακολούθηση της υγείας του API
Η παρακολούθηση της υγείας API καλύπτει ένα ευρύ φάσμα αναγκών. Όταν παρέχετε εφαρμογές που βασίζονται σε API, για παράδειγμα, οι έλεγχοι υγείας διασφαλίζουν ότι η υποκείμενη υποδομή API λειτουργεί όπως θα έπρεπε, έτσι ώστε οι εφαρμογές σας να μπορούν να κάνουν το ίδιο.
Ένα σύστημα ελέγχου υγείας πύλης API μπορεί να είναι ιδιαίτερα χρήσιμο σε πολύπλοκα περιβάλλοντα. Ας υποθέσουμε ότι χρησιμοποιείτε ένα Πύλη API για μικροϋπηρεσίες και αυξάνεται ο αριθμός των μικροϋπηρεσιών που χρησιμοποιείτε. Στην ουσία, όσο περισσότερο χρησιμοποιείτε, τόσο πιο πολύπλοκα γίνονται τα πράγματα. Με πολλά να παρακολουθείτε, η αυτοματοποίηση της παρακολούθησης της υγείας των τελικών σημείων του microservice API είναι απολύτως λογική. Σημαίνει ότι μπορείτε να ακολουθήσετε μια προληπτική προσέγγιση για την έγκαιρη αντιμετώπιση τυχόν προβλημάτων που διαφορετικά θα μπορούσαν να εμποδίσουν τη σωστή λειτουργία των API σας.
Όχι ότι η παρακολούθηση της υγείας του API αφορά αποκλειστικά τον εντοπισμό προβλημάτων λειτουργικότητας ή διαθεσιμότητας – όπως αναφέραμε παραπάνω, μπορείτε επίσης να χρησιμοποιήσετε δεδομένα ελέγχου υγείας για να βελτιστοποιήσετε την εμπειρία χρήστη που προσφέρουν τα API σας και οι εφαρμογές που βρίσκονται πάνω τους. Για παράδειγμα, εάν προσδιορίσετε τα σημεία συμφόρησης απόδοσης ως μέρος ενός ελέγχου υγείας API, μπορείτε να κάνετε αλλαγές που θα εξαλείψουν αυτά τα σημεία συμφόρησης και θα συμβάλουν στη βελτιωμένη απόδοση. Αυτό μπορεί να σημαίνει καλύτερη εμπειρία χρήστη για όλους τους καταναλωτές σας.
Πώς κάνετε έλεγχο υγείας στις μικροϋπηρεσίες;
Οι μικρουπηρεσίες ελέγχου υγείας είναι απλές. Χρειάζεστε απλώς ένα τελικό σημείο API ελέγχου υγείας για κάθε υπηρεσία. Στη συνέχεια, μπορείτε να ελέγξετε όποιες μετρήσεις είναι πιο σχετικές με αυτήν την υπηρεσία – κατανάλωση μνήμης, σύνδεση βάσης δεδομένων, χρόνο απόκρισης και ούτω καθεξής. Μπορείτε να χρησιμοποιήσετε έναν πίνακα εργαλείων για την εμφάνιση των αποτελεσμάτων και ένα σύστημα ειδοποίησης για να επισημάνετε αμέσως τυχόν προβλήματα.
Εκτός από την παρακολούθηση της λειτουργικής υγείας μεμονωμένων μικροϋπηρεσιών, οι έλεγχοι υγείας API μπορούν επίσης να επαληθεύσουν την ικανότητα κάθε υπηρεσίας να συνδέεται με εξαρτημένες υπηρεσίες. Αυτή η παρακολούθηση κατάστασης λειτουργίας κατάντη σάς βοηθά να εντοπίσετε τυχόν προβλήματα στην αρχιτεκτονική των μικροϋπηρεσιών σας όσο το δυνατόν νωρίτερα.
Ποια είναι η διαφορά μεταξύ του ελέγχου υγείας API και του ping API;
Μπορείτε να χρησιμοποιήσετε ping για να ελέγξετε ότι τα API σας εκτελούνται και λαμβάνουν αιτήματα HTTP. Εάν λάβετε μια επιτυχημένη απάντηση ping, γνωρίζετε ότι το API σας λαμβάνει αιτήματα. Ωστόσο, ένας έλεγχος υγείας API μπορεί να σας πει πολλά περισσότερα. Όχι μόνο δείχνει ότι το API σας εκτελείται, αλλά μπορεί να σας διαβεβαιώσει ότι όλα τα κρίσιμα μέρη του λειτουργούν όπως αναμενόταν – και σας βοηθά να λάβετε μέρος σε ό,τι δεν λειτουργεί.
Πώς λειτουργεί ένας έλεγχος υγείας πύλης API;
Έχουμε επικεντρωθεί παραπάνω στον έλεγχο μεμονωμένων API, μικροϋπηρεσιών και ούτω καθεξής, αλλά μπορείτε – και πρέπει! – χρησιμοποιήστε επίσης υπηρεσίες ελέγχου υγείας για να διασφαλίσετε ότι η πύλη API σας λειτουργεί όπως αναμένεται. Ακριβώς όπως οι υγειονομικοί έλεγχοι μπορούν να επαληθεύσουν ότι οι εφαρμογές και τα υποκείμενα API τους είναι διαθέσιμες και λειτουργούν όπως αναμένεται, μπορείτε να τους χρησιμοποιήσετε για να επαληθεύσετε την κατάσταση της πύλης σας.
Ενα από οφέλη του Tyk είναι ότι το κάνει εύκολο. Με το Tyk API Gateway, ο έλεγχος υγείας ζωντανότητας εκτελείται στο /Γειά σου διαδρομή από προεπιλογή, αν και μπορείτε να τη διαμορφώσετε ώστε να εκτελείται σε οποιαδήποτε διαδρομή θέλετε να ορίσετε. Το τελικό σημείο ελέγχου υγείας ανανεώνεται κάθε δέκα δευτερόλεπτα, επιστρέφοντας α HTTP 200 ΟΚ απάντηση αν όλα πάνε καλά.
Τύλιξε
Η παρακολούθηση της υγείας των API σας είναι μια εξαιρετική προσέγγιση για τη διασφάλιση της ελαχιστοποίησης του χρόνου διακοπής λειτουργίας και τη βελτιστοποίηση της απόδοσης, παρέχοντας ως αποτέλεσμα μια ανώτερη εμπειρία χρήστη. Κάνοντας αυτό σημαίνει ότι μπορείτε να εντοπίσετε προβλήματα σε πρώιμο στάδιο. Με τη σειρά του, αυτό σημαίνει ότι μπορείτε να εφαρμόσετε διορθωτικά μέτρα πριν αυτά τα ζητήματα κλιμακωθούν. Για να επιστρέψουμε στην προηγούμενη οδοντιατρική μας αναλογία, είναι πολύ καλύτερο να εντοπίσουμε μια κοιλότητα σε πρώιμο στάδιο και να κανονίσουμε να έχουμε ένα σφράγισμα παρά να την αφήσουμε να πάει ανεξέλεγκτη και να καταλήξουμε να χάσουμε το δόντι!
Η ομάδα Tyk είναι πάντα σε ετοιμότητα για να απαντήσει σε οποιεσδήποτε ερωτήσεις μπορεί να έχετε σχετικά με τον έλεγχο και την παρακολούθηση της υγείας του API. Εναλλακτικά, εάν αντιμετωπίζετε το θέμα της παρακολούθησης της υγείας από την οπτική γωνία των μικροϋπηρεσιών, ίσως σας φανεί χρήσιμο να διαβάσετε το άρθρο μας σχετικά με πύλη microservice και μοτίβα πρόσβασης.