Ця стаття є дзеркальною статтею машинного перекладу, будь ласка, натисніть тут, щоб перейти до оригінальної статті.

Вид: 27491|Відповідь: 2

[Веб] Практична конфігурація балансування навантаження з високою доступністю NGINX

[Копіювати посилання]
Опубліковано 14.06.2020 11:50:26 | | | |
Я користуюся балансуванням навантаження Alibaba Cloud вже понад 6 років, а nginx — понад 6 років.

Балансування навантаження базується на існуючих мережевих структурах і забезпечує дешевий, ефективний і прозорий спосіб масштабування мережевого обладнання та пропускної здатності серверів, збільшення пропускної здатності, покращення можливостей обробки мережевих даних та підвищення гнучкості та доступності мережі.
Баланс навантаження означає, що він розподіляється між кількома операційними блоками, такими як веб-сервери, FTP-сервери, критично важливі корпоративні сервери застосунків та інші критично важливі сервери, щоб спільно виконувати робочі завдання.

Простіше кажучи, він розподіляє кілька запитів між різними серверами на бекенді, щоб зменшити навантаження на кожен сервер і досягти високої доступності, навіть якщо один сервер поклав слухавку, це не має жодного впливу.

Передусім

Я встановив node.js нативно і встановив http-server для емуляції двох веб-контейнерів. (Використовуйте IIS або реалізуйте протокол HTTP на власному коді)

Після встановлення node.js виконайте таку команду:

вікно, встановіть http-сервер у nodejs і увімкніть HTTP-сервер
https://www.itsvse.com/thread-6838-1-1.html

Імітація двох бекенд-сайтів

Я створив дві нові папки — site1 і site2 — під каталогом E:\wwwroot, кожна з яких мала index.html файл.



Вміст: індекс 1 by:itsvse.com та індекс 2 by:itsvse.com


Потім прослухайте два HTTP-порти з наступною командою, щоб відкрити два сайти.

Спробуйте отримати доступ до обох станцій окремо:Вхід за гіперпосиланням видно. Вхід за гіперпосиланням видно.Зображення такі:



Конфігурація балансування навантаження NGINX

Завантажте версію nginx для Windows за такою адресою:Вхід за гіперпосиланням видно.

Після завантаження розпакуйте його до каталогу E:\root\nginx-1.18.0. Змініть файл E:\wwwroot\nginx-1.18.0\conf\nginx.conf наступним чином:



Запустіть програму nginx наступною командою:



nginx -s зупиніть швидке вимкнення
nginx -s припинила граціозне вимкнення
nginx -s перезавантажує зміну конфігурації, запуск нових worker процесів з новою конфігурацією, плавне вимкнення старих worker процесів
nginx -s повторно відкриває файли журналів

Доступ до сайту балансування навантаження nginx через браузер:Вхід за гіперпосиланням видно.



Ми багато разів оновлюємо і повертаємося знову, і бачимо, що вміст, який повертається, різний щоразу, і ви бачите, що nginx розповсюджує різні запити до різних http-сервісів на бекенді,Намагаючись зупинити сайт site1, ми бачимо, що це не впливає на наш звичайний доступ, і nginx пересилає всі запити на сайт site2

Стан конфігурації балансування навантаження Nginx
станОгляд
ВнизПоточний сервер наразі не бере участі у балансуванні навантаження
Резервне копіюванняРезервовані резервні сервери активуються, коли всі інші сервери зависають
max_failsКількість дозволених невдалих запитів, якщо кількість невдалих запитів перевищує ліміт, закриває сервер із віртуального пулу сервісів після fail_timeout часу
fail_timeoutПісля відмови max_fails сервіс зупиняє час, max_fails потрібно встановити значення fail_timeout
max_connsОбмежити максимальну кількість з'єднань для різних конфігурацій серверного апаратного забезпечення


Політика планування балансування навантаження Nginx

Алгоритми плануванняОгляд
ПоллотОпитування по одному — метод за замовчуванням
вагаЗважене опитування, чим вища вага, тим більша ймовірність розподілу
ip_hashВиділення результатів хешу з IP, що отримує доступ, призведе до того, що запити з тієї ж IP-адреси звертаються до фіксованого фонового сервера
url_hashПризначайте відповідно до результату хешу відвіданої URL
least_connМінімальна кількість посилань — сервер із меншою кількістю посилань буде призначений
Значення ключа хешуКастомний хеш


Для детальнішої інформації про конфігурації nginx дивіться:Вхід за гіперпосиланням видно.





Попередній:Розділення та видалення журналів Nginx
Наступний:Концепція та різниця між ITO, BPO, KPO та трьома
 Орендодавець| Опубліковано 16.03.2021 15:48:20 |
nginx: [emerg] CreateFile() "C:\360安全浏览器下载\nginx-1.18.0/conf/nginx.conf" failed (1113: No mapping for the Unicode character exists in the target multi-byte code page)
nginx: configuration file C:\360安全浏览器下载\nginx-1.18.0/conf/nginx.conf test failed


Шляхи nginx не можуть бути створені китайцями
 Орендодавець| Опубліковано 10.01.2023 19:31:52 |
【Практична дія】Веб-урок з високої доступності для Keepalived та Nginx
https://www.itsvse.com/thread-10118-1-1.html
Застереження:
Усе програмне забезпечення, програмні матеріали або статті, опубліковані Code Farmer Network, призначені лише для навчання та досліджень; Вищезазначений контент не повинен використовуватися в комерційних чи незаконних цілях, інакше користувачі несуть усі наслідки. Інформація на цьому сайті надходить з Інтернету, і спори щодо авторських прав не мають до цього сайту. Ви повинні повністю видалити вищезазначений контент зі свого комп'ютера протягом 24 годин після завантаження. Якщо вам подобається програма, будь ласка, підтримуйте справжнє програмне забезпечення, купуйте реєстрацію та отримайте кращі справжні послуги. Якщо є будь-яке порушення, будь ласка, зв'яжіться з нами електронною поштою.

Mail To:help@itsvse.com