2008-12-01 2 views
4

Мне очень нравится, как Ajax делает веб-приложение более похожим на настольное приложение, но я беспокоюсь о хитах на сайте с большим объемом. Я сейчас разрабатываю приложение для базы данных, основанное на интрасети, и не более 2-4 человек будут получать доступ за один раз. Я Ajaxing черт из этого, но это заставило меня задуматься, сколько Ajax слишком много?To Ajaxify или нет?

В какой момент объем хитов перевешивает преимущества, наблюдаемые при использовании Ajax? На самом деле это не похоже на обновление всей страницы, поскольку вы теоретически обновляете только те части, которые нуждаются в обновлении.

Мне интересно, если кто-либо из вас использовал Ajax на сайтах с большим объемом и в каком качестве вы его использовали? Это создает проблемы масштабирования?

ответ

2

В моем текущем проекте мы используем Ajax, и у нас были проблемы с масштабированием. Поскольку мой текущий проект - это сайт J2EE, который выполняет хронометраж для сотрудников большого городского города, мы обнаружили, что лучше всего, если сторона браузера может кэшировать данные, которые не будут меняться в течение всего сеанса пользователя. К счастью, мы переходим к модели, где у нас есть единый процесс администрирования, позволяющий использовать как можно больше сотрудников. Это будет похоже на то, как приложение ERP может работать (или приложение электронной почты). Следовательно, наша потребность в бизнесе заключается в том, что на стороне браузера может храниться много данных, но мы не ожидаем, что объем обращений будет серьезной проблемой. Таким образом, мы сохранили остров данных XML на стороне браузера. Кроме того, мы загружаем данные только по мере необходимости.

Я настоятельно рекомендую книгу Ajax Design Patterns или их site.

2

Ajax должен помочь вашей пропускной способности на узле с большим объемом, если это ваша забота, как вы, как вы сказали, только обновление частей, которые нуждаются в обновлении. Моя проблема с Ajax заключается в том, что ваш сайт может быть бесполезен, если у посетителей нет включенного javascript, и большую часть времени мне больше не хочется кодировать сайт для пользователей, не являющихся javascript.

+2

С хорошим дизайном, начальный участок построен первый затем Javascript и Ajax позже. – strager 2008-12-01 04:03:28

1

Самая распространенная проблема масштабирования приложений ajax заключается в том, чтобы настроить их для проверки с сервером, чтобы узнать, обновляется ли контент за это время, не требуя от пользователя активного запроса. 5 клиентов, проверяющих каждые 10 секунд, не 5000 клиентов, проверяющих каждые 10 секунд.

1

Ajax с одной стороны уменьшает нагрузку на сервер, поскольку он обычно показывает или обновляет только часть страницы, а с другой - увеличивает количество обращений к серверу. Я бы сказал, что все зависит от архитектуры вашего веб-приложения. Если вашему приложению требуется большая обработка для каждого удара (например, доступ к базе данных) независимо от размера ответа, то Ajax сильно ударит вас.

2

Посмотрите на это так: AJAX не должен быть только вариант из-за возможности скрипта, он должен существовать как слой поверх существующей архитектуры, чтобы обеспечить превосходный опыт в некоторых отношениях. Учитывая это, AJAX не может создать более запросов или больше работы, чем простой HTML, поскольку он обрабатывает ту же передачу данных.

Где он может сэкономить вам пропускную способность и нагрузку на сервер, так как AJAX предоставляет вам возможность передавать только данных. Вы можете сэкономить на избыточных запросах HTML, изображений, css и т. Д. С обновлением каждой страницы, обеспечивая при этом более приятный пользовательский интерфейс.

Как Майк nvck баллов из методика опроса является большим исключением из этого правила, но это о технике не текло: вы будете иметь тот же вид воздействия, если вы имели простую страницу опрос.

Поймите инструмент и используйте его для того, для чего он был разработан. Если реализация AJAX снижает производительность, вы сделали что-то неправильно.

(FWIW, мой опыт профилирующих AJAX против простого HTML, как правило, приводит к ~ 60% пропускной способности, ~ 80-90% выигрыш в производительности)

Смежные вопросы