Архитектура веб-приложений в веб-ферме

Я знаю, что есть некоторые изменения в веб-приложении при переходе с одного веб-сервера на два или более веб-серверов. Но есть ли в архитектуре какие-либо другие изменения, которые следует учитывать при добавлении дополнительных серверов в ферму? Я понимаю, что развертывание станет более сложным, если в ферме будет больше серверов. Я спрашиваю, потому что некоторое время назад во время интервью у меня возникло опасение, что у меня недостаточно опыта работы с большой веб-фермой. Три сервера — это самый большой объем, с которым мне доводилось работать.


person shannon.stewart    schedule 03.09.2010    source источник


Ответы (1)


Одна важная вещь, о которой следует позаботиться, — это использование хранилища на основе памяти. Это включает в себя состояние сеанса, состояние приложения, кеш и т. д. Когда у вас есть один сервер, безопасно использовать их для записи значений для последующего использования и ожидать их там позже. В веб-ферме каждый экземпляр приложения будет иметь свое собственное пространство памяти, поэтому вам нужно соблюдать осторожность при его использовании между различными запросами страниц.

Состояние сеанса может быть изменено на SQL-сервер или на использование сервера состояний, это облегчит некоторые проблемы, позволит вам правильно обрабатывать пользовательские сеансы (если приложение имеет концепцию пользователей и учетных записей). Привязка сеанса — еще одна хорошая вещь, позволяющая убедиться, что после того, как пользователь был направлен на определенную машину в ферме, он будет продолжать направляться на одну и ту же машину на протяжении всего посещения.

Конечно, есть и другие аспекты, которые нужно решить, но это то, с чем мне приходится иметь дело прямо сейчас.

person CyberDude    schedule 03.09.2010