Διαφορές και τεχνικές βελτιστοποίησης στο αρχείο διαμόρφωσης PHP-FPM /etc/php/8.3/fpm/pool.d/

Είναι όλα εντάξει μόλις ο διακομιστής ξεκινήσει να λειτουργεί; Στην πραγματικότητα, στον κόσμο του PHP-FPM, το αρχείο ρυθμίσεων είναι ο πραγματικός εγκέφαλος, καθορίζοντας εάν ο ιστότοπος μπορεί να λειτουργεί σταθερά, με ασφάλεια και αποτελεσματικότητα.

Ποια είναι η διαμόρφωση της ομάδας διεργασιών για το PHP-FPM;

Το PHP-FPM (FastCGI Process Manager) είναι ένας διαχειριστής διεργασιών για PHP που χρησιμοποιεί την έννοια των "pools" (ομάδες) για τη διαχείριση διεργασιών PHP για διαφορετικούς ιστότοπους ή εφαρμογές.

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

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

Διαφορές και τεχνικές βελτιστοποίησης στο αρχείο διαμόρφωσης PHP-FPM /etc/php/8.3/fpm/pool.d/

www. conf:默认的进程池

Μετά την εγκατάσταση του PHP-FPM, το σύστημα θα δημιουργήσει αυτόματα ένα www.conf αρχείο.

Η λειτουργία του είναι να παρέχει μια προεπιλεγμένη ομάδα που λειτουργεί αμέσως, συνήθως εκτελείται σε... www-data Μεταχειριζόμενος.

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

  • user = www-data
  • group = www-data
  • listen = /run/php/php8.3-fpm.sock
  • pm.max_children = 5

Αν τρέχετε μόνο σε έναν ιστότοπο, αυτό αρκεί.

etUFO.org.conf: Προσαρμοσμένη ομάδα ιστότοπων

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

Για παράδειγμα etufo.org.confΕίναι ειδικά για ονόματα τομέα. etUFO. Οργ Αποκλειστική διαμόρφωση.

Η κοινή πρακτική είναι:

  • Καθορίστε διαφορετικούς χρήστες και ομάδες, για παράδειγμα user = etufo,group = etufo
  • Διαμορφώστε μια ξεχωριστή θύρα ή υποδοχή ακρόασης, για παράδειγμα listen = /run/php/etufo.sock
  • Προσαρμόστε τον αριθμό των διεργασιών για να διασφαλίσετε τη σταθερότητα του ιστότοπου υπό υψηλή ταυτόχρονη λειτουργία.
  • Τα ανεξάρτητα αρχεία καταγραφής διευκολύνουν την αντιμετώπιση προβλημάτων.

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

dummy.conf: Παράδειγμα ή αρχείο κράτησης θέσης

dummy.conf Αυτά είναι συνήθως πρότυπα ή παραδείγματα που παρέχονται από το σύστημα.

Δεν θα ενεργοποιηθεί στην πραγματικότητα, εκτός αν το τροποποιήσετε και το ενεργοποιήσετε χειροκίνητα.

Σκοπός του είναι να σας παρέχει μια αναφορά και να σας δείξει πώς να γράψετε μια νέα διαμόρφωση ομάδας.

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

Γιατί να χρησιμοποιήσετε πολλά αρχεία pool;

  • 安全 性Διαφορετικοί ιστότοποι θα πρέπει να εκτελούνται από διαφορετικούς χρήστες για να αποφεύγεται η επικάλυψη δικαιωμάτων.
  • 性能优化Ο αριθμός των διεργασιών μπορεί να οριστεί ξεχωριστά για κάθε ομάδα και να προσαρμοστεί ανάλογα με τη ζήτηση κυκλοφορίας.
  • ΑπομόνωσηΤα αρχεία καταγραφής, η έξοδος σφαλμάτων και οι θύρες ακρόασης είναι όλα ξεχωριστά, διευκολύνοντας την αντιμετώπιση προβλημάτων.

Για παράδειγμα, αν www.conf Κατέρρευσε.etufo.org.conf Μπορεί να συνεχίσει να εκτελείται κανονικά και δεν θα διακόψει τη λειτουργία ολόκληρου του διακομιστή.

Πρακτικά σενάρια εφαρμογής

  • Διακομιστής μίας τοποθεσίαςΜόνο χρήση www.conf Αυτό είναι αρκετό.
  • Διακομιστής πολλαπλών τοποθεσιών: Δημιουργήστε ένα για κάθε ιστότοπο .conf Αρχεία, όπως π.χ. etufo.org.conf.
  • dummy.confΜόνο για αναφορά, δεν συνιστάται.

Παράδειγμα σύγκρισης διαμόρφωσης

www. conf(默认池)

[www]
user = www-data
group = www-data
listen = /run/php/php8.3-fpm.sock
pm = dynamic
pm.max_children = 5

etufo.org.conf (Προσαρμοσμένη ομάδα)

[etufo.org]
user = etufo
group = etufo
listen = /run/php/etufo.sock
pm = dynamic
pm.max_children = 20
access.log = /var/log/php-fpm/etufo.access.log

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

Ρύθμιση παραμέτρων ομάδας διεργασιών PHP-FPM

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

Για ιστότοπους με ορισμένο ποσοστό επισκεψιμότητας, συνιστάται η χρήση pm = dynamicΕπειδή μπορεί να διατηρήσει έναν ορισμένο αριθμό αδρανών διεργασιών και να αποφύγει 500 σφάλματα κατά τη διάρκεια υψηλής ταυτόχρονης λειτουργίας.

Συνιστάται να το χρησιμοποιείτε μόνο όταν ο όγκος πρόσβασης είναι εξαιρετικά χαμηλός και οι πόροι μνήμης είναι περιορισμένοι. pm = ondemand Για εξοικονόμηση πόρων.

Συνιστάται να το αλλάξετε σε δυναμικό και να το βελτιστοποιήσετε. pm.max_children Και άλλες παράμετροι:

pm = dynamic
pm.max_children = 16  ; 根据服务器资源调整,建议值:CPU 核心数 × 2
pm.start_servers = 4   ; 初始进程数,建议设为 max_children × 25%
pm.min_spare_servers = 2  ; 最小空闲进程数
pm.max_spare_servers = 7  ; 最大空闲进程数
pm.max_requests = 3000    ; 每个子进程处理完 3000 个请求后自动重启
pm.process_idle_timeout = 10s  ; 空闲进程 10s 后自动退出

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

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

Σύμφωνα με την επίσημη τεκμηρίωση της PHP:

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

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

Συμπέρασμα: Η άποψή μου

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

www.conf Είναι ο προεπιλεγμένος μαέστρος, κατάλληλος για σόλο εμφανίσεις.etufo.org.conf Είναι ένας μαέστρος σχεδιασμένος ειδικά για μια συγκεκριμένη σκηνή· και dummy.conf Είναι ένα προσχέδιο μουσικών παρτιτούρων, που σας υπενθυμίζει πώς να γράφετε νέες μελωδίες.

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

Η διαμόρφωση δεν είναι απλώς ένα ασήμαντο κείμενο· είναι η ψυχή ενός διακομιστή.

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

Ιστολόγιο Hope Chen Weiliang ( https://www.chenweiliang.com/ Το άρθρο "Διαφορές και Τεχνικές Βελτιστοποίησης του Αρχείου Ρυθμίσεων PHP-FPM /etc/php/8.3/fpm/pool.d/" που κοινοποιήθηκε εδώ μπορεί να σας φανεί χρήσιμο.

Καλώς ήρθατε να μοιραστείτε τον σύνδεσμο αυτού του άρθρου:https://www.chenweiliang.com/cwl-33845.html

Για να ξεκλειδώσετε περισσότερα κρυμμένα κόλπα🔑, καλώς ήρθατε στο κανάλι μας στο Telegram!

Κάντε share και like αν σας αρέσει! Τα share και τα likes σας είναι το συνεχές μας κίνητρο!

 

发表 评论

Η διεύθυνση email σας δεν θα δημοσιευτεί. 必填 项 已 用 * 标注

Μεταβείτε στην κορυφή