Κορυφαίες 18 ερωτήσεις και απαντήσεις συνέντευξης Nginx (2025)

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


1) Εξηγήστε τι είναι το Nginx;

Το Nginx είναι ένας διακομιστής ιστού και ένας διακομιστής ανάστροφου διακομιστή μεσολάβησης για πρωτόκολλα HTTP, HTTPS, SMTP, POP3 και IMAP.

Δωρεάν λήψη PDF: Ερωτήσεις συνέντευξης Nginx


2) Αναφέρετε μερικά ιδιαίτερα χαρακτηριστικά του Nginx;

Τα ειδικά χαρακτηριστικά του διακομιστή Nginx περιλαμβάνει

  • Reverse proxy/ L7 Load Balancer
  • Ενσωματωμένος διερμηνέας Perl
  • Εν κινήσει δυαδική αναβάθμιση
  • Χρήσιμο για επανεγγραφή URL και φοβερή υποστήριξη PCRE

3) Αναφέρετε ποια είναι η διαφορά μεταξύ Nginx και Apache;

nginx Apache
  • Το Nginx είναι ένας διακομιστής ιστού που βασίζεται σε συμβάντα
  • Όλα τα αιτήματα αντιμετωπίζονται από ένα μόνο νήμα.
  • Το Nginx αποφεύγει την ιδέα παιδικών διεργασιών.
  • Το Nginx μοιάζει με ταχύτητα
  • Το Nginx είναι καλύτερο όταν πρόκειται για κατανάλωση μνήμης και σύνδεση
  • Το Nginx είναι καλύτερο όταν θέλετε εξισορρόπηση φορτίου
  • Για την PHP, το Nginx μπορεί να είναι προτιμότερο καθώς υποστηρίζει την PHP εσωτερικά
  • Το Nginx δεν υποστηρίζει λειτουργικά συστήματα όπως το IBMi και το OpenVMS.
  • Το Nginx έρχεται μόνο με βασικά χαρακτηριστικά
  • Η απόδοση και η επεκτασιμότητα του Nginx δεν εξαρτώνται από το υλικό
  •  Ο Apache είναι ένας διακομιστής που βασίζεται σε διαδικασίες
  • Ένα νήμα χειρίζεται ένα μόνο αίτημα.
  • Το Apache βασίζεται σε θυγατρικές διαδικασίες
  • Τα Apache μοιάζουν με δύναμη
  • Ο Apache δεν είναι κατάλληλος όσον αφορά την κατανάλωση μνήμης και τη σύνδεση
  • Ο Apache θα αρνηθεί νέες συνδέσεις όταν η κίνηση φτάσει στο όριο των διαδικασιών
  • PHP, Python, Perl και άλλες γλώσσες της υποστήριξης Apache που χρησιμοποιούν πρόσθετα. Είναι χρήσιμο όταν η εφαρμογή βασίζεται σε Python ή Ruby
  • Οι Apache υποστηρίζουν πολύ μεγαλύτερο εύρος λειτουργικών συστημάτων
  • Το Apache παρέχει πολύ περισσότερη λειτουργικότητα από το Nginx
  • Το Apache εξαρτάται από στοιχεία υλικού όπως η CPU και η μνήμη

4) Εξηγήστε πώς το Nginx μπορεί να χειριστεί αιτήματα HTTP;

Το Nginx χρησιμοποιεί το μοτίβο του αντιδραστήρα. Ο κύριος βρόχος συμβάντος περιμένει το OS για να σηματοδοτήσει ένα συμβάν ετοιμότητας - έτσι ώστε τα δεδομένα να είναι προσβάσιμα για ανάγνωση από μια υποδοχή, οπότε διαβάζονται στο buffer και υποβάλλονται σε επεξεργασία. Ένα μεμονωμένο νήμα μπορεί να εξυπηρετήσει δεκάδες χιλιάδες ταυτόχρονες συνδέσεις.


5) Στο Nginx πώς μπορείτε να αποτρέψετε την επεξεργασία αιτημάτων με απροσδιόριστα ονόματα διακομιστών;

Ένας διακομιστής που απλώς απορρίπτει τα αιτήματα μπορεί να οριστεί ως  

Server {

listen                80;

server_name  " " ;

return              444;

}

Εδώ το όνομα διακομιστή διατηρείται ως κενή συμβολοσειρά που θα ταιριάζει με το αίτημα χωρίς το πεδίο κεφαλίδας "Host" και επιστρέφεται ένας ειδικός μη τυπικός κωδικός 444 του Nginx που τερματίζει τη σύνδεση.

Ερωτήσεις συνέντευξης Nginx
Ερωτήσεις συνέντευξης Nginx

6) Ποιο είναι το πλεονέκτημα της χρήσης ενός "αντίστροφου διακομιστή μεσολάβησης";

Ο αντίστροφος διακομιστής μεσολάβησης μπορεί να κρύψει την παρουσία και τα χαρακτηριστικά του διακομιστή προέλευσης. Λειτουργεί ως ενδιάμεσο μεταξύ του internet cloud και του web server. Είναι καλό για λόγους ασφαλείας, ειδικά όταν χρησιμοποιείτε υπηρεσίες φιλοξενίας ιστοσελίδων.


7) Αναφέρετε ποια είναι η καλύτερη χρήση του διακομιστή Nginx;

Η καλύτερη χρήση του διακομιστή Nginx είναι η ανάπτυξη δυναμικού περιεχομένου HTTP σε ένα δίκτυο χρησιμοποιώντας SCGI, διακομιστές εφαρμογών WSGI, χειριστές FastCGI για σενάρια. Μπορεί επίσης να χρησιμεύσει ως εξισορροπητής φορτίου.


8) Αναφέρετε τι είναι οι διαδικασίες Master και Worker στον διακομιστή Nginx;

  • Κύριες διαδικασίες: Διαβάζει καθώς και αξιολογεί τη διαμόρφωση και διατηρεί τις διαδικασίες εργασίας.
  • Διαδικασίες εργαζομένων: Στην πραγματικότητα κάνει την επεξεργασία των αιτημάτων.
Ερωτήσεις συνέντευξης Nginx
Ερωτήσεις συνέντευξης Nginx

9) Εξηγήστε πώς μπορείτε να ξεκινήσετε το Nginx μέσω διαφορετικής θύρας εκτός της 80;

Για να ξεκινήσετε το Nginx μέσω διαφορετικής θύρας, πρέπει να μεταβείτε στο /etc/Nginx/sites-enabled/ και αν αυτό είναι το προεπιλεγμένο αρχείο, τότε πρέπει να ανοίξετε το αρχείο που ονομάζεται "default". Επεξεργαστείτε το αρχείο και βάλτε τη θύρα που θέλετε Like server { listen 81; }


10) Εξηγήστε είναι δυνατόν να αντικατασταθούν σφάλματα Nginx όπως το σφάλμα 502 με 503;

  • 502= Κακή πύλη
  • 503= Υπερφόρτωση διακομιστή

Ναι, είναι δυνατόν, αλλά εσείς να το εξασφαλίσετε fastcgi_intercept_errors έχει οριστεί σε ON και χρησιμοποιήστε την οδηγία της σελίδας σφάλματος.  

Location / {

fastcgi_pass 127.0.01:9001;

fastcgi_intercept_errors on;

error_page 502 =503/error_page.html;

#...

}

11) Στο Nginx, εξηγήστε πώς μπορείτε να διατηρήσετε διπλές κάθετες σε διευθύνσεις URL;

Για να διατηρήσετε διπλές κάθετες στις διευθύνσεις URL, πρέπει να χρησιμοποιήσετε merge_slashes_off; Σύνταξη: merge_slashes [ενεργοποίηση / απενεργοποίηση] Προεπιλογή: merge_slashes στο Context: http, διακομιστής


12) Εξηγήστε σε τι χρησιμοποιείται το ngx_http_upstream_module;

Το ngx_http_upstream_module χρησιμοποιείται για τον ορισμό ομάδων διακομιστών που μπορούν να παραπέμψουν με τις οδηγίες passcgi pass, proxy pass, uwsgi pass, memcached pass και scgi pass.


13) Εξηγήστε τι είναι το πρόβλημα C10K;

Το πρόβλημα C10K αναφέρεται για την υποδοχή δικτύου που δεν μπορεί να χειριστεί μεγάλο αριθμό πελατών (10,000) ταυτόχρονα.


14) Αναφέρετε ποια είναι η χρήση των οδηγιών stub_status και sub_filter;

  • Οδηγία Stub_status: Αυτή η οδηγία χρησιμοποιείται για τη γνώση της τρέχουσας κατάστασης του Nginx όπως η τρέχουσα ενεργή σύνδεση, η συνολική αποδεκτή σύνδεση και ο τρέχων αριθμός σύνδεσης ανάγνωσης/εγγραφής/αναμονής
  • Οδηγία Sub_filter: Χρησιμοποιείται για την αναζήτηση και την αντικατάσταση του περιεχομένου σε απόκριση και τη γρήγορη επιδιόρθωση μπαγιάτικων δεδομένων

15) Εξηγήστε ότι η υποστήριξη Nginx συμπιέζει το αίτημα στο upstream;

Μπορείτε να συμπιέσετε το αίτημα στο upstream χρησιμοποιώντας τη μονάδα Nginx φερμουάρ. Η μονάδα gunzip είναι ένα φίλτρο που αποσυμπιέζει τις απαντήσεις με "Κωδικοποίηση περιεχομένου: gzip" για πελάτες ή διακομιστές που δεν υποστηρίζουν τη μέθοδο κωδικοποίησης "gzip".


16) Εξηγήστε πώς μπορείτε να λάβετε την τρέχουσα ώρα στο Nginx;

Για να λάβετε την τρέχουσα ώρα στο Nginx, πρέπει να χρησιμοποιήσετε μεταβλητές από την ενότητα SSI, $date_gmt και $date_local.

  • Proxy_set_header THE-TIME $date_gmt;

17) Εξηγήστε ποιος είναι ο σκοπός του –s με τον διακομιστή Nginx;

Για την εκτέλεση του εκτελέσιμου αρχείου του Nginx –s χρησιμοποιείται η παράμετρος.


18) Εξηγήστε πώς να προσθέσετε μονάδες στον διακομιστή Nginx;

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

Αυτές οι ερωτήσεις συνέντευξης θα βοηθήσουν επίσης στο viva (προφορικά) σας

Κοινοποίηση

4 Σχόλια

  1. Avatar venu gopal Choudhary λέει:

    Παρατήρησα μια λάθος δήλωση στο άρθρο σας.

    8) Αναφέρετε τι είναι οι διαδικασίες Master και Worker στον διακομιστή Nginx;

    Ενημερώστε το.
    Η κύρια διαδικασία διατηρεί τη διαμόρφωση και οι εργαζόμενοι κάνουν τη διαδικασία.

    1. Avatar Guru99 λέει:

      Υπάρχει κάποια παρεξήγηση, η απάντηση υπονοεί το ίδιο.

    2. Avatar bibhu bal λέει:

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

Αφήστε μια απάντηση

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