
У меня есть два сервера, которые я хотел бы использовать для балансировки нагрузки приложения. В идеале, но не обязательно, я мог бы балансировать нагрузку на основе URL. Но, основываясь на моих исследованиях, это не то, что часто делается.
Мой план состоял в том, чтобы использовать DNS-сервисы CloudFlare для отказоустойчивости. Более важным, чем высокая доступность, является увеличение производительности.
Есть ли хороший способ сделать это без 3 серверов?
решение1
Вы можете использовать MicrosoftБалансировка сетевой нагрузки. Требуется всего два сервера.
решение2
Вы можете установить балансировщик нагрузки, напримерПерлбална одном из серверов и передавать запросы на другой на основе URL или по принципу циклического перебора по мере необходимости, но узким местом может очень быстро стать сервер с Perlbal — обычно в этой ситуации используются три сервера.
Вы говорите, что вам нужна производительность, а не избыточность; более эффективным способом достижения этого (в зависимости от вашего оборудования, трафика и приложения) может быть использование одного сервера в качестве HTTP-сервера, а другого — в качестве HTTP-ускорителя с помощью чего-то вроде Varnish.