Apache & Nginx. ಒಂದು ಸರಪಳಿಯಿಂದ ಸಂಪರ್ಕಿಸಲಾಗಿದೆ

ಟೈಮ್‌ವೆಬ್‌ನಲ್ಲಿ Apache & Nginx ಸಂಯೋಜನೆಯನ್ನು ಹೇಗೆ ಅಳವಡಿಸಲಾಗಿದೆ

ಅನೇಕ ಕಂಪನಿಗಳಿಗೆ, Nginx + Apache + PHP ಬಹಳ ವಿಶಿಷ್ಟ ಮತ್ತು ಸಾಮಾನ್ಯ ಸಂಯೋಜನೆಯಾಗಿದೆ, ಮತ್ತು Timeweb ಇದಕ್ಕೆ ಹೊರತಾಗಿಲ್ಲ. ಆದಾಗ್ಯೂ, ಅದನ್ನು ಹೇಗೆ ಕಾರ್ಯಗತಗೊಳಿಸಲಾಗಿದೆ ಎಂಬುದನ್ನು ನಿಖರವಾಗಿ ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವುದು ಆಸಕ್ತಿದಾಯಕ ಮತ್ತು ಉಪಯುಕ್ತವಾಗಿದೆ.

Apache & Nginx. ಒಂದು ಸರಪಳಿಯಿಂದ ಸಂಪರ್ಕಿಸಲಾಗಿದೆ

ಅಂತಹ ಸಂಯೋಜನೆಯ ಬಳಕೆಯು ಸಹಜವಾಗಿ, ನಮ್ಮ ಗ್ರಾಹಕರ ಅಗತ್ಯತೆಗಳಿಂದ ನಿರ್ದೇಶಿಸಲ್ಪಡುತ್ತದೆ. Nginx ಮತ್ತು Apache ಎರಡೂ ವಿಶೇಷ ಪಾತ್ರವನ್ನು ನಿರ್ವಹಿಸುತ್ತವೆ, ಪ್ರತಿಯೊಂದೂ ನಿರ್ದಿಷ್ಟ ಸಮಸ್ಯೆಯನ್ನು ಪರಿಹರಿಸುತ್ತದೆ.

ಮೂಲ ಸೆಟ್ಟಿಂಗ್‌ಗಳು ಅಪಾಚೆ ಅಪಾಚೆಯ ಕಾನ್ಫಿಗರೇಶನ್ ಫೈಲ್‌ಗಳಲ್ಲಿಯೇ ನಿರ್ವಹಿಸಲಾಗುತ್ತದೆ ಮತ್ತು ಕ್ಲೈಂಟ್ ಸೈಟ್‌ಗಳ ಸೆಟ್ಟಿಂಗ್‌ಗಳು ಸಂಭವಿಸುತ್ತವೆ .htaccess ಫೈಲ್. .htaccess ಒಂದು ಕಾನ್ಫಿಗರೇಶನ್ ಫೈಲ್ ಆಗಿದ್ದು, ಇದರಲ್ಲಿ ಕ್ಲೈಂಟ್ ಸ್ವತಂತ್ರವಾಗಿ ವೆಬ್ ಸರ್ವರ್‌ನ ನಿಯಮಗಳು ಮತ್ತು ನಡವಳಿಕೆಯನ್ನು ಕಾನ್ಫಿಗರ್ ಮಾಡಬಹುದು. ಈ ಸೆಟ್ಟಿಂಗ್ ನಿರ್ದಿಷ್ಟವಾಗಿ ಅವರ ಸೈಟ್‌ಗೆ ಅನ್ವಯಿಸುತ್ತದೆ. ಉದಾಹರಣೆಗೆ, ಅಪಾಚೆ ಕಾರ್ಯನಿರ್ವಹಣೆಗೆ ಧನ್ಯವಾದಗಳು, ಬಳಕೆದಾರರು ಅದೇ PHP ಆವೃತ್ತಿಯೊಳಗೆ ಆಪರೇಟಿಂಗ್ ಮೋಡ್ ಅನ್ನು mod_php ನಿಂದ mod_cgi ಗೆ ಬದಲಾಯಿಸಬಹುದು; ನೀವು ಮರುನಿರ್ದೇಶನಗಳು, SEO ಗಾಗಿ ಆಪ್ಟಿಮೈಸೇಶನ್, ಅನುಕೂಲಕರ URL, PHP ಗಾಗಿ ಕೆಲವು ಮಿತಿಗಳನ್ನು ಹೊಂದಿಸಬಹುದು.

ಎನ್ನಿಕ್ಸ್ ಟ್ರಾಫಿಕ್ ಅನ್ನು ಅಪಾಚೆಗೆ ಮರುನಿರ್ದೇಶಿಸಲು ಪ್ರಾಕ್ಸಿ ಸರ್ವರ್ ಆಗಿ ಮತ್ತು ಸ್ಥಿರ ವಿಷಯವನ್ನು ಪೂರೈಸಲು ವೆಬ್ ಸರ್ವರ್ ಆಗಿ ಬಳಸಲಾಗುತ್ತದೆ. ನಾವು ನಮ್ಮ ಬಳಕೆದಾರರ ಡೇಟಾವನ್ನು ರಕ್ಷಿಸಲು ಅನುಮತಿಸುವ Nginx ಗಾಗಿ ಭದ್ರತಾ ಮಾಡ್ಯೂಲ್‌ಗಳನ್ನು ಸಹ ಅಭಿವೃದ್ಧಿಪಡಿಸಿದ್ದೇವೆ, ಉದಾಹರಣೆಗೆ, ಪ್ರತ್ಯೇಕ ಪ್ರವೇಶ ಹಕ್ಕುಗಳಿಗಾಗಿ.

ಬಳಕೆದಾರರು ನಮ್ಮ ಕ್ಲೈಂಟ್‌ನ ವೆಬ್‌ಸೈಟ್‌ಗೆ ಭೇಟಿ ನೀಡುತ್ತಾರೆ ಎಂದು ಊಹಿಸೋಣ. ಮೊದಲಿಗೆ, ಬಳಕೆದಾರರು Nginx ಅನ್ನು ಪಡೆಯುತ್ತಾರೆ, ಇದು ಸ್ಥಿರ ವಿಷಯವನ್ನು ಒದಗಿಸುತ್ತದೆ. ಇದು ತಕ್ಷಣವೇ ಸಂಭವಿಸುತ್ತದೆ. ನಂತರ, PHP ಅನ್ನು ಲೋಡ್ ಮಾಡಲು ಬಂದಾಗ, Nginx ವಿನಂತಿಯನ್ನು Apache ಗೆ ರವಾನಿಸುತ್ತದೆ. ಮತ್ತು ಅಪಾಚೆ, PHP ಜೊತೆಗೆ ಈಗಾಗಲೇ ಡೈನಾಮಿಕ್ ವಿಷಯವನ್ನು ಉತ್ಪಾದಿಸುತ್ತದೆ.

Timeweb ನಲ್ಲಿ Apache & Nginx ಬಂಡಲ್‌ನ ವೈಶಿಷ್ಟ್ಯಗಳು

ನಮ್ಮ ವರ್ಚುವಲ್ ಹೋಸ್ಟಿಂಗ್ Apache & Nginx ಗಾಗಿ 2 ಮುಖ್ಯ ಆಪರೇಟಿಂಗ್ ಸ್ಕೀಮ್‌ಗಳನ್ನು ಅಳವಡಿಸುತ್ತದೆ: ಹಂಚಿಕೆ ಮತ್ತು ಸಮರ್ಪಿಸಲಾಗಿದೆ.

ಹಂಚಿಕೆಯ ಯೋಜನೆ

ಈ ಯೋಜನೆಯನ್ನು ಹೆಚ್ಚಿನ ಬಳಕೆದಾರರಿಗೆ ಬಳಸಲಾಗುತ್ತದೆ. ಅದರ ಸರಳತೆ ಮತ್ತು ಸಂಪನ್ಮೂಲ ತೀವ್ರತೆಯಿಂದ ಇದು ಪ್ರತ್ಯೇಕಿಸಲ್ಪಟ್ಟಿದೆ: ಹಂಚಿಕೆಯ ಯೋಜನೆಯು ಕಡಿಮೆ ಸಂಪನ್ಮೂಲಗಳನ್ನು ಬಳಸುತ್ತದೆ, ಅದಕ್ಕಾಗಿಯೇ ಅದರ ಸುಂಕವು ಅಗ್ಗವಾಗಿದೆ. ಈ ಯೋಜನೆಯ ಪ್ರಕಾರ, ಸರ್ವರ್ ಒಂದು Nginx ಅನ್ನು ರನ್ ಮಾಡುತ್ತದೆ, ಇದು ಎಲ್ಲಾ ಬಳಕೆದಾರರ ವಿನಂತಿಗಳನ್ನು ಮತ್ತು ಅಪಾಚೆಯ ಹಲವಾರು ನಿದರ್ಶನಗಳನ್ನು ಪೂರೈಸಲು ಅನುಮತಿಸುತ್ತದೆ.

ಹಂಚಿದ ಯೋಜನೆಯು ದೀರ್ಘಕಾಲದವರೆಗೆ ಸುಧಾರಿಸುತ್ತಿದೆ: ಕ್ರಮೇಣ ನಾವು ನ್ಯೂನತೆಗಳನ್ನು ಸರಿಪಡಿಸಿದ್ದೇವೆ. ಅನುಕೂಲಕರವಾಗಿ, ಮೂಲ ಕೋಡ್ ಅನ್ನು ಮಾರ್ಪಡಿಸುವ ಅಗತ್ಯವಿಲ್ಲದೇ ಇದನ್ನು ಮಾಡಬಹುದು.

Apache & Nginx. ಒಂದು ಸರಪಳಿಯಿಂದ ಸಂಪರ್ಕಿಸಲಾಗಿದೆ
ಹಂಚಿಕೆಯ ಯೋಜನೆ

ಮೀಸಲಾದ ಯೋಜನೆ

ಡೆಡಿಕೇಟೆಡ್‌ಗೆ ಹೆಚ್ಚಿನ ಸಂಪನ್ಮೂಲಗಳು ಬೇಕಾಗುತ್ತವೆ, ಆದ್ದರಿಂದ ಅದರ ಸುಂಕವು ಗ್ರಾಹಕರಿಗೆ ಹೆಚ್ಚು ದುಬಾರಿಯಾಗಿದೆ. ಡೆಡಿಕೇಟೆಡ್ ಸ್ಕೀಮ್‌ನಲ್ಲಿ, ಪ್ರತಿ ಕ್ಲೈಂಟ್ ತನ್ನದೇ ಆದ ಪ್ರತ್ಯೇಕ ಅಪಾಚೆಯನ್ನು ಪಡೆಯುತ್ತದೆ. ಇಲ್ಲಿ ಸಂಪನ್ಮೂಲಗಳನ್ನು ಕ್ಲೈಂಟ್‌ಗಾಗಿ ಕಾಯ್ದಿರಿಸಲಾಗಿದೆ, ಅವುಗಳನ್ನು ಪ್ರತ್ಯೇಕವಾಗಿ ಹಂಚಲಾಗುತ್ತದೆ. ಇದು ಹೇಗೆ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ: ಸರ್ವರ್‌ನಲ್ಲಿ PHP ಯ ಹಲವಾರು ಆವೃತ್ತಿಗಳಿವೆ. ನಾವು 5.3, 5.4, 5.6, 7.1, 7.2, 7.3, 7.4 ಆವೃತ್ತಿಗಳನ್ನು ಬೆಂಬಲಿಸುತ್ತೇವೆ. ಆದ್ದರಿಂದ, PHP ಯ ಪ್ರತಿ ಆವೃತ್ತಿಗೆ ತನ್ನದೇ ಆದ Apache ಅನ್ನು ಪ್ರಾರಂಭಿಸಲಾಗಿದೆ.

Apache & Nginx. ಒಂದು ಸರಪಳಿಯಿಂದ ಸಂಪರ್ಕಿಸಲಾಗಿದೆ
ಮೀಸಲಾದ ಯೋಜನೆ

ಸುರಕ್ಷಿತ ವಲಯ. Nginx ನಲ್ಲಿ ವಲಯಗಳನ್ನು ಹೊಂದಿಸಲಾಗುತ್ತಿದೆ

ಹಿಂದೆ, Nginx ಗಾಗಿ, ನಾವು ಅನೇಕ ಹಂಚಿಕೆಯ ಮೆಮೊರಿ ವಲಯಗಳನ್ನು (ವಲಯಗಳು) ಬಳಸಿದ್ದೇವೆ - ಪ್ರತಿ ಡೊಮೇನ್‌ಗೆ ಒಂದು ಸರ್ವರ್ ಬ್ಲಾಕ್. ಪ್ರತಿ ಸೈಟ್‌ಗೆ ಪ್ರತ್ಯೇಕ ವಲಯವನ್ನು ರಚಿಸಿರುವುದರಿಂದ ಈ ಸೆಟಪ್‌ಗೆ ಬಹಳಷ್ಟು ಸಂಪನ್ಮೂಲಗಳು ಬೇಕಾಗುತ್ತವೆ. ಆದಾಗ್ಯೂ, Nginx ಸೆಟ್ಟಿಂಗ್‌ಗಳಲ್ಲಿ, ಹೆಚ್ಚಿನ ಸೈಟ್‌ಗಳು ಒಂದೇ ರೀತಿಯದ್ದಾಗಿರುತ್ತವೆ, ಆದ್ದರಿಂದ ಮಾಡ್ಯೂಲ್‌ನಲ್ಲಿ ನಕ್ಷೆ ನಿರ್ದೇಶನಗಳ ಬಳಕೆಗೆ ಧನ್ಯವಾದಗಳು ಅವುಗಳನ್ನು ಒಂದು ವಲಯದಲ್ಲಿ ಇರಿಸಬಹುದು ngx_http_map_module, ಇದು ಪತ್ರವ್ಯವಹಾರಗಳನ್ನು ನಿರ್ದಿಷ್ಟಪಡಿಸಲು ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ. ಉದಾಹರಣೆಗೆ, ನಾವು ವಲಯ ಟೆಂಪ್ಲೇಟ್ ಅನ್ನು ಹೊಂದಿದ್ದೇವೆ ಅದರಲ್ಲಿ ನಾವು ಅಸ್ಥಿರಗಳನ್ನು ಪೂರೈಸಬೇಕು: ಸೈಟ್‌ಗೆ ಮಾರ್ಗ, PHP ಆವೃತ್ತಿ, ಬಳಕೆದಾರ. ಹೀಗಾಗಿ, Nginx ಕಾನ್ಫಿಗರೇಶನ್‌ನ ಮರು-ಓದುವಿಕೆ, ಅಂದರೆ ಮರುಲೋಡ್ ಅನ್ನು ವೇಗಗೊಳಿಸಲಾಯಿತು.

ಈ ಸಂರಚನೆಯು RAM ಸಂಪನ್ಮೂಲಗಳನ್ನು ಹೆಚ್ಚು ಉಳಿಸಿತು ಮತ್ತು Nginx ಅನ್ನು ವೇಗಗೊಳಿಸಿತು.

ಮರುಲೋಡ್ ಕೆಲಸ ಮಾಡುವುದಿಲ್ಲ!

ಹಂಚಿಕೊಂಡ ಯೋಜನೆಯಲ್ಲಿ, ವೆಬ್‌ಸೈಟ್ ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ಬದಲಾಯಿಸುವಾಗ ಅಪಾಚೆಯನ್ನು ಮರುಲೋಡ್ ಮಾಡುವ ಅಗತ್ಯವನ್ನು ನಾವು ತೊಡೆದುಹಾಕಿದ್ದೇವೆ. ಹಿಂದೆ, ಒಬ್ಬ ಕ್ಲೈಂಟ್ ಡೊಮೇನ್ ಅನ್ನು ಸೇರಿಸಲು ಅಥವಾ PHP ಆವೃತ್ತಿಯನ್ನು ಬದಲಾಯಿಸಲು ಬಯಸಿದಾಗ, Apache ನ ಕಡ್ಡಾಯ ಮರುಲೋಡ್ ಅಗತ್ಯವಿತ್ತು, ಇದು ಪ್ರತಿಕ್ರಿಯೆಗಳಲ್ಲಿ ವಿಳಂಬ ಮತ್ತು ಋಣಾತ್ಮಕವಾಗಿ ಪರಿಣಾಮ ಬೀರುವ ಸೈಟ್ ಕಾರ್ಯಕ್ಷಮತೆಗೆ ಕಾರಣವಾಯಿತು.

ಡೈನಾಮಿಕ್ ಕಾನ್ಫಿಗರೇಶನ್‌ಗಳನ್ನು ರಚಿಸುವ ಮೂಲಕ ನಾವು ಮರುಲೋಡ್‌ಗಳನ್ನು ತೊಡೆದುಹಾಕಿದ್ದೇವೆ. ಇವರಿಗೆ ಧನ್ಯವಾದಗಳು mpm-itk (ಅಪಾಚೆ ಮಾಡ್ಯೂಲ್), ಪ್ರತಿ ಪ್ರಕ್ರಿಯೆಯು ಪ್ರತ್ಯೇಕ ಬಳಕೆದಾರರಂತೆ ಚಲಿಸುತ್ತದೆ, ಇದು ಸುರಕ್ಷತೆಯ ಮಟ್ಟವನ್ನು ಹೆಚ್ಚಿಸುತ್ತದೆ. ಈ ವಿಧಾನವು ಬಳಕೆದಾರ ಮತ್ತು ಅವರ ಡಾಕ್ಯುಮೆಂಟ್_ರೂಟ್ ಕುರಿತು ಡೇಟಾವನ್ನು Nginx ನಿಂದ Apache2 ಗೆ ವರ್ಗಾಯಿಸಲು ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ. ಹೀಗಾಗಿ, ಅಪಾಚೆ ಸೈಟ್ ಕಾನ್ಫಿಗರೇಶನ್‌ಗಳನ್ನು ಹೊಂದಿಲ್ಲ, ಅದು ಅವುಗಳನ್ನು ಕ್ರಿಯಾತ್ಮಕವಾಗಿ ಸ್ವೀಕರಿಸುತ್ತದೆ ಮತ್ತು ಮರುಲೋಡ್‌ಗಳು ಇನ್ನು ಮುಂದೆ ಅಗತ್ಯವಿಲ್ಲ.

Apache & Nginx. ಒಂದು ಸರಪಳಿಯಿಂದ ಸಂಪರ್ಕಿಸಲಾಗಿದೆ
ಹಂಚಿದ ಸ್ಕೀಮಾ ಕಾನ್ಫಿಗರೇಶನ್

ಡಾಕರ್ ಬಗ್ಗೆ ಏನು?

ಅನೇಕ ಕಂಪನಿಗಳು ಕಂಟೈನರ್ ಆಧಾರಿತ ವ್ಯವಸ್ಥೆಗೆ ಸ್ಥಳಾಂತರಗೊಂಡಿವೆ. ಟೈಮ್‌ವೆಬ್ ಪ್ರಸ್ತುತ ಅಂತಹ ಪರಿವರ್ತನೆಯ ಸಾಧ್ಯತೆಯನ್ನು ಪರಿಗಣಿಸುತ್ತಿದೆ. ಸಹಜವಾಗಿ, ಪ್ರತಿಯೊಂದು ನಿರ್ಧಾರಕ್ಕೂ ಸಾಧಕ-ಬಾಧಕಗಳಿವೆ.

ನಿರಾಕರಿಸಲಾಗದ ಅನುಕೂಲಗಳ ಜೊತೆಗೆ, ಕಂಟೇನರ್ ಸಿಸ್ಟಮ್ ಬಳಕೆದಾರರಿಗೆ ಕಡಿಮೆ ಸಂಪನ್ಮೂಲಗಳನ್ನು ಒದಗಿಸುತ್ತದೆ. ಟೈಮ್‌ವೆಬ್‌ನಲ್ಲಿ, ವಿವರಿಸಿದ ಹೋಸ್ಟಿಂಗ್ ಸ್ಕೀಮ್‌ಗೆ ಧನ್ಯವಾದಗಳು, ಬಳಕೆದಾರರಿಗೆ RAM ನಲ್ಲಿ ಯಾವುದೇ ಮಿತಿಯಿಲ್ಲ. ಇದು ಕಂಟೇನರ್‌ಗಿಂತ ಹೆಚ್ಚಿನ ಸಂಪನ್ಮೂಲಗಳನ್ನು ಪಡೆಯುತ್ತದೆ. ಹೆಚ್ಚುವರಿಯಾಗಿ, ಬಳಕೆದಾರರು ಹೆಚ್ಚಿನ ಅಪಾಚೆ ಮಾಡ್ಯೂಲ್‌ಗಳನ್ನು ಲೋಡ್ ಮಾಡಿರಬಹುದು.

ಟೈಮ್‌ವೆಬ್ ಸುಮಾರು 500 ವೆಬ್‌ಸೈಟ್‌ಗಳಿಗೆ ಶಕ್ತಿ ನೀಡುತ್ತದೆ. ನಾವು ಹೆಚ್ಚಿನ ಜವಾಬ್ದಾರಿಯನ್ನು ತೆಗೆದುಕೊಳ್ಳುತ್ತೇವೆ ಮತ್ತು ಸಂಕೀರ್ಣ ವಾಸ್ತುಶಿಲ್ಪಕ್ಕೆ ತ್ವರಿತ, ನ್ಯಾಯಸಮ್ಮತವಲ್ಲದ ಬದಲಾವಣೆಗಳನ್ನು ಮಾಡುವುದಿಲ್ಲ. Apache & Nginx ಸಂಯೋಜನೆಯು ವಿಶ್ವಾಸಾರ್ಹ ಮತ್ತು ಸಮಯ-ಪರೀಕ್ಷಿತವಾಗಿದೆ. ನಾವು ಪ್ರತಿಯಾಗಿ, ಅನನ್ಯ ಸಂರಚನೆಗಳ ಮೂಲಕ ಗರಿಷ್ಠ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಸಾಧಿಸಲು ಪ್ರಯತ್ನಿಸುತ್ತೇವೆ.

ಹೆಚ್ಚಿನ ಸಂಖ್ಯೆಯ ಸೈಟ್‌ಗಳ ಉತ್ತಮ-ಗುಣಮಟ್ಟದ ಮತ್ತು ವೇಗದ ಕಾರ್ಯಾಚರಣೆಗಾಗಿ, ನೀವು Apache ಮತ್ತು Nginx ನ ಟೆಂಪ್ಲೇಟ್ ಮತ್ತು ಡೈನಾಮಿಕ್ ಕಾನ್ಫಿಗರೇಶನ್ ಅನ್ನು ಬಳಸಬೇಕಾಗುತ್ತದೆ. ದೊಡ್ಡ ಸಂಖ್ಯೆಯ ಒಂದೇ ರೀತಿಯ ಸರ್ವರ್‌ಗಳನ್ನು ಸುಲಭವಾಗಿ ಮತ್ತು ತ್ವರಿತವಾಗಿ ನಿರ್ವಹಿಸಲು ಇದು ನಿಮ್ಮನ್ನು ಅನುಮತಿಸುತ್ತದೆ.

ಮೂಲ: www.habr.com

ಕಾಮೆಂಟ್ ಅನ್ನು ಸೇರಿಸಿ