Обработка на стороне клиента по сравнению с обработкой на стороне сервера, которая выполняется быстро?


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

Если для определенной функциональности у нас есть решение как на javascript, так и на php/asp, то что следует выбрать и почему?

Author: Jitendra Vyas, 2010-01-04

3 answers

Предварительная загрузка JavaScript обычно выполняется быстрее, так как не требуется поездка на сервер туда и обратно (и обычно наиболее трудоемкими являются сетевые операции).

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

 2
Author: Quentin, 2010-01-04 06:44:30

Здесь необходимо учитывать несколько факторов и несколько компромиссов.

Серверная машина обычно сильнее клиентской. ОТО, обычно клиентов гораздо больше, чем серверов. Таким образом, когда #клиенты превышают определенный порог, обработка на стороне клиента происходит быстрее (серверу придется обрабатывать вычисления от всех клиентов, что перевесит его более мощный процессор).

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

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

 1
Author: Itay Maman, 2010-01-04 06:47:15

Я большой поклонник переноса всех возможных процессов в браузере.Если вы нацелены на браузеры с поддержкой JS (т.Е.: для веб-приложения)

В основном для разгрузки сервера процесса рендеринга и сохранения некоторой пропускной способности сети.

Рендеринг HTML на стороне клиента сегодня действительно быстрый, даже на мобильных телефонах с поддержкой Интернета, почему бы не использовать эту компьютерную мощность, доступную в браузере?

И как только HTML, CSS и JS окажутся в кэше браузера (в текущем сеансе или в предыдущем), только данные передаются по сети.
И если вы разместите все эти статические файлы на CDN, представьте себе увеличение скорости.

Эти опции, по моему опыту, дают пользователю гораздо более отзывчивый интерфейс.

Мы немного помешаны на скорости, и это был дизайн, который мы использовали для создания нашего веб-приложения:

  • статические файлы на CDN
  • серверная часть для обслуживания только служб JSON и обеспечения безопасности
  • и мы используем ЧИСТЫЙ для отображения JSON в HTML-клиенте сторона
 0
Author: Mic, 2010-01-04 12:52:27