არქიტექტურა Nginx შექმნილია მაღალი შესრულების, სტაბილურობისა და მასშტაბურობის მისაღწევად. ქვემოთ მოცემულია არქიტექტურის ძირითადი კომპონენტების დეტალური აღწერა Nginx:
Master Process
ეს არის მთავარი პროცესი Nginx, რომელიც ასევე ცნობილია როგორც მშობელი პროცესი. მისი პასუხისმგებლობაა თანამშრომლის პროცესებისა და სხვა საერთო მენეჯმენტის ამოცანების მართვა. კითხულობს master process და ამუშავებს კონფიგურაციას, შემდეგ ქმნის მუშა პროცესებს კლიენტების მოთხოვნების დასამუშავებლად.
Worker Process
მას შემდეგ რაც იქმნება master process, მუშა პროცესები ხდება ბავშვის პროცესები Nginx. მუშაკთა პროცესების რაოდენობა შეიძლება იყოს კონფიგურირებული, რათა დააკმაყოფილოს სისტემის მუშაობის და რესურსების მოთხოვნები. თითოეული worker process მუშაობს დამოუკიდებლად, არ იზიარებს მეხსიერებას და არ ურთიერთობს უშუალოდ ერთმანეთთან, რაც აძლიერებს სტაბილურობას Nginx.
Event-driven Architecture
Nginx იყენებს event-driven architecture მოთხოვნებს. თითოეული მოთხოვნისთვის ცალკეული ძაფების გამოყენების ნაცვლად, Nginx იყენებს ასინქრონულ ფუნქციებს მოვლენების დასამუშავებლად. ეს საშუალებას აძლევს ერთს worker process ერთდროულად გაუმკლავდეს რამდენიმე მოთხოვნას, ოპტიმიზაცია გაუწიოს სისტემის რესურსებს და უზრუნველყოს მაღალი შესრულება.
Event Module
Nginx მხარს უჭერს სხვადასხვა event module მუშაობას ოპერაციულ სისტემასთან და ქსელურ ინფრასტრუქტურასთან. ეს მოდულები ეხმარება Nginx ბირთვთან ურთიერთქმედებას და თავიდან აიცილონ ზედმეტი დაბლოკვა და ლოდინი, რაც ამცირებს დატვირთვას სისტემაზე.
Worker Connections
ეს არის კავშირების რაოდენობა, რომელსაც თითოეულს worker process შეუძლია ერთდროულად გაუმკლავდეს. ეს კონფიგურაცია იძლევა კავშირების რაოდენობის მორგებას, რათა უზრუნველყოს ოპტიმალური შესრულება სისტემის რესურსებზე და კლიენტის მოთხოვნის ტრაფიკზე.
Proxy და Load Balancing
Nginx შეუძლია იმოქმედოს როგორც proxy სერვერი, რაც საშუალებას აძლევს მას გადაიყვანოს კლიენტების მოთხოვნები სისტემის აპლიკაციის სერვერებზე. ეს საშუალებას აძლევს განაწილებული აპლიკაციების განთავსებას და load balancing მრავალ სერვერზე, გაზარდოს შესრულება და საიმედოობა.
მისი მოქნილი და მაღალი ხარისხის არქიტექტურის წყალობით, Nginx იგი გახდა ერთ-ერთი ყველაზე პოპულარული ვებ სერვერი და პროქსი, რომელიც ფართოდ გამოიყენება მთელ მსოფლიოში, რომელიც აკმაყოფილებს მოთხოვნისა და მონაცემთა დამუშავების მზარდ მოთხოვნებს ინტერნეტში.