как сделать запросы с ajax быстрее (asp.net vs mvc) - PullRequest
1 голос
/ 11 декабря 2010

Я нахожу множество веб-сайтов, в которых есть некоторые части на странице, которые используют ajax намного быстрее, чем я привык видеть запросы ajax

, такие как изменение представлений с помощью вкладок, когда я нажимаю на вкладку, это очень быстро меняет содержимоечем я использовал в своих веб-приложениях, использующих Asp.Net и Ajax Control Toolkit

, а также очень быстрое разбиение на страницы в ретрансляторах или сетках, чем я когда-либо разрабатывал в своих веб-приложениях

, как этот веб-сайт http://www.filgoal.com/English/DefaultDynamic.aspx

, поэтому мне нужно знать, какие технологии используются для достижения этой цели. Этот веб-сайт разработан с использованием .net

, но мне нужно знать, что для этого нужна другая технология (откуда я могу учиться)это)

или это просто asp.net + ajax или другая технология

это MVC

также я хочу знать, лучше ли MVC, чем asp.net +Ajax касается производительности

заранее спасибо

Ответы [ 5 ]

3 голосов
/ 11 декабря 2010

В основном существуют две популярные технологии:

  1. Классические веб-формы ASP.NET с использованием Microsoft AJAX с UpdatePanels и Ajax Control Toolkit
  2. ASP.NET MVC с jquery

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

С ASP.NET MVC и jQuery вы имеете полный контроль над HTML и содержимым запросов / ответов AJAX., он немного ближе к металлу, чем UpdatePanels, поскольку существует ViewState для сохранения.

Одним из важных аспектов создания адаптивных веб-сайтов является отправка запросов и отправка только тех данных, которые должны отображаться на клиенте.Например, если на вашей странице есть сетка с разбивкой на страницы, вы должны выполнить разбиение на страницы на уровне базы данных и отправлять только те записи, которые в данный момент отображаются на клиенте.

2 голосов
/ 21 декабря 2010

Это не совсем случай X-технологии против Y-технологии.Все они имеют свои достоинства.

Хорошо настроенный сайт JQuery + ASP.Net MVC должен работать так же, как и любой сайт ASP.Net.Очень важно знать, как оптимизировать.

Советы:

  • Google PageSpeed, Yahoo YSlow и Firebug являются необходимыми инструментами.
  • Используйте AJAX только там, где вам нужноэто, иначе сделайте это по запросу страницы.Вызов сервера дважды, когда информация может быть получена один раз (для довольно незначительной производительности), как правило, является худшим вариантом
  • Попробуйте использовать JQuery 1.4+, это оптимизировано для ускорения в новых браузерах
  • Поскольку Дэвид Роббинс уже разместил вышеупомянутую ссылку, я не буду беспокоиться, но это отличное понимание повышения производительности.

С уважением, Джейми

1 голос
/ 11 декабря 2010

Сейчас я сертифицированный преподаватель Microsoft по различным предметам, включая ASP.NET, и я всегда слышал такие вопросы, как ваш.Из своего опыта я могу сказать, что ASP.NET MVC сильно отличается от ASP.NET WebForms, и одно из этих отличий заключается в большем контроле, который вы имеете в MVC для рендеринга HTML.Это может контролировать практически все детали того, как отображать веб-страницу, а также требует гораздо больше работы для детализации, чтобы придать хороший вид, немного отличающийся от того, что происходит в WebForms.Чтобы иметь возможность создавать представление намного быстрее, на самом деле AjaxControlToolkit - не самая лучшая идея, и я начинаю верить, что либо WebForms, хотя всегда найдутся люди, которые думают иначе.С AjaxControlToolkit многие используют UpdatePanel, что также не очень хорошая идея, это позволяет вам использовать Ajax простым способом, не пачкая рук, но забирает всю мощь, которую вы когда-либо могли иметь.Вы просите хорошо, чтобы сначала создать наиболее производительные представления, вам нужно выучить следующее:

  • ASP.NET MVC (Вы учитесь практически с нуля новому способу создания приложений, если вы никогда этого не делалииспользуйте, например, PHP)
  • jQuery (библиотека javascript, в этом секрет скорости и универсальности многих сайтов).
  • jQuery Plugins (среди них много jqgrid, jstree, spinnerи более того, вы управляете ими вручную, вы должны забыть о перетаскивании)
  • JSON (это способ передачи и получения данных между приложением и JavaScript или запросом)
  • REST (альтернатива сервисам SOAP)

Надеюсь, это поможет, если у вас есть дополнительные вопросы, вы можете связаться со мной по электронной почте

1 голос
/ 11 декабря 2010

Блог Дэйва Уорда может помочь объяснить лучшие практики для Ajax и обрезать данные, отправляемые на ваш сервер и с него. Смотрите мой SO ответ здесь . В некоторых случаях вы можете отключить просмотр состояния и получать данные через PageMethods. В блоге Дейва есть хорошее понимание того, что вы можете сделать.

0 голосов
/ 12 декабря 2010

Я спрашиваю о похожих сайтах, но эти сайты разрабатываются с использованием asp.net, но у него очень высокая производительность ajax, поэтому я хочу знать, какую технологию использовать для достижения аналогичной производительности

когда я использую пейджинг или табуляцию с панелью обновления ajax и инструментарием управления ajax

это занимает от 10 до 30 секунд в зависимости от данных, дизайна страницы и элементов управления страницы

но, например, эта страница http://www.filgoal.com/English/DefaultDynamic.aspx

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

а также на этой странице есть раскрывающийся список фильтрации, который работает быстрее, чем я могу реализовать с помощью панели обновления http://www.filgoal.com/English/AllNews.aspx?CatID=1

эта страница является страницей aspx, но мне нужно знать, нужен ли такой веб-сайт

1 - asp.net или mvc, или это не отличается в этом вопросе о производительности ajax

2 - это только AJAX или AJAX + другая технология или вообще не AJAX (это другая технология)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...