Секогаш кога вашиот систем расте, сообраќајот се зголемува, сè повеќе корисници ги користат вашите производи, серверите почнуваат да реагираат побавно, прекините го принудуваат вашиот бизнис да страда, а потоа почнувате да размислувате за скалирање.
Постојат две примарни стратегии за скалирање - вертикална и хоризонтална.
Вертикалното скалирање има намера да ја зголеми моќноста на системот со додавање обично повеќе CPU и RAM на вашите сервери.
Спротивно на тоа, хоризонталното скалирање се фокусира на дуплирање (или клонирање) на вашите сервери во базенот на ресурси.
Повеќе за овие:
Вертикално скалирање
Вертикалното скалирање е најдобрата опција за систем со мал сообраќај бидејќи тоа е најпристапниот пристап за справување со растот без воведување дополнителна сложеност. Не треба да се грижите за распоредување стратегии за група ресурси, за еластичноста на базенот на ресурси, за бездржавноста на вашиот сервер, за дистрибуираниот кеш итн.
Сепак, вертикалното скалирање има сериозни недостатоци
- Хардверско ограничување бидејќи е невозможно бесконечно да се додаваат ресурси
- Недостатокот на неуспех и технолошки вишок го зголемува ризикот од продолжено прекинување и губење на податоци
Хоризонтално скалирање
Хоризонталното скалирање ги елиминира овие проблеми со клонирање на серверите за апликации и вградување на компонента како што е Load balancer .
Балансерот на оптоварување го дистрибуира сообраќајот на вашите сервери користејќи специфични алгоритми како што се:
Круг-робин Пондериран круг-робин - Пристапи базирани на IP хаш
- Најмал начин на поврзување
- Најмал пондериран метод на поврзување
- Метод со најмал одговор и многу други.
Сепак, има неколку недостатоци:
- Серверите мора да бидат без државјанство
- Сесиите треба да се одржуваат во централизирана продавница за податоци
- Покомплицирано
распоредување стратегии може да се бара - Балансерот на оптоварување може да стане тесно грло во перформансите ако е погрешно конфигуриран и ресурсите не се доволни
- Тој воведува дополнителна сложеност на системот и претставува потенцијална единствена точка на неуспех, која бара примена на стратегии за отфрлање
L4 / L7 Балансери на оптоварување
За два уреди на интернет да комуницираат едни со други, основните системи треба да следат специфични протоколи. Сите слушнаа за моделот OSI, кој опишува седум слоеви кои компјутерските системи ги користат за да комуницираат преку мрежа. Иако современиот интернет се заснова на поедноставен модел на стек протокол TCP/IP, моделот OSI е широко користен, бидејќи помага да се визуелизира и да се комуницира како функционираат мрежите и да се изолираат и да се отстранат проблемите со мрежата.
Повеќето индустриски решенија за балансирање на оптоварување ги користат термините L4 и L7 каде што L4 се однесува на транспортниот слој во OSI моделот и L7 се однесува на слојот на апликација.
Балансерот на оптоварување L4 сè уште е L2/L3 бидејќи користи податоци од долните слоеви како што се IP адресата и бројот на портата.
Главните предности на балансот на оптоварување L4
Тој е посигурен и пофункционален бидејќи содржината на податоците не се зема во донесувањето одлуки за рутирање
Истата TCP врска се одржува помеѓу клиентот и серверот, што помага да се спречи надминување на границата на достапни TCP конекции на балансерот на оптоварување
Главните недостатоци на балансерот на оптоварување L4
- Интелигентното рутирање е невозможно бидејќи содржината не се дешифрира
- Статуалниот протокол носи дополнителна сложеност
- Мапирање помеѓу јавни и приватни адреси
- Нема кеширање бидејќи содржината е недостапна на ова ниво
- Не е можно да се користи за архитектура на микроуслуги бидејќи пренасочувањето на сообраќајот не е достапно врз основа на патеката на URL-то
Од друга страна, балансерот на оптоварување L7 работи на ниво на примена во OSI моделот
Главните предности на балансерот на оптоварување L7
Паметните одлуки може да се донесат врз основа на патеката на URL-то, заглавијата, содржината
Кеширање
Главните недостатоци на балансерот на оптоварување L7
- Дополнителни трошоци поради одржување на две TCP конекции, едната помеѓу клиентот и load balancer, втората помеѓу load balancer и серверот. Исто така, треба да се земе предвид границата за поврзување TCP на балансерот на оптоварување
- Помалку безбеден бидејќи балансерот на оптоварување мора да знае сертификати за да може да ги дешифрира податоците и да донесува одлуки за рутирање
Заклучок
Балансерот на товарот е витална компонента кога се применува хоризонтално скалирање за ракување со системи со голем сообраќај. Постојат два главни типа на балансери на оптоварување L4 и L7.
Балансерот на оптоварување L4 е многу посигурен и поефективен поради ограничувањата за донесување паметни одлуки
L7 балансерот на оптоварување работи на начин да обезбеди интелигентни одлуки за рутирање поради трошоците за ефикасност и безбедност
Изборот на соодветен тип зависи од системските барања и треба внимателно да се разгледа со разумна рамнотежа на примена на безбедносните принципи и елиминирање на тесните грла во изведбата.
Објавено и овде.