2013-05-28 3 views
0

Я программист начального уровня с несколькими месяцами опыта. Вчера я обсуждал с коллегой, как мы можем улучшить работу проекта, над которым мы работаем вместе.Server-side vs Клиентское веб-приложение Производительность

Проект построен с C# + Ext.NET + JS

План состоял в том, чтобы двигаться, как много вещей, как можно на стороне клиента JavaScript вместо взаимодействия с сервером все время.

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

Есть ли золотая точка? Существуют ли определенные «правила»? Как вы достигаете максимальной производительности? Например, облачные приложения Google, такие как Документы, довольно быстро для того, что они делают, и это веб-приложения. Это очень хорошая производительность.

+2

Золотая точка для исполнения довольно проста. Если он начинает замедлять работу компьютеров пользователей, запускающих приложение, не передавайте его клиенту. В противном случае передача его клиенту является правильной вещью. –

+0

Я думаю, что одна вещь, отсутствующая в вашем вопросе, - это тип расчета, который вы собираетесь делать. Например, вы создаете веб-редактор изображений, какое-то подключенное к базе данных приложение, чтобы люди могли создавать/обновлять данные, математическую программу и т. Д.? Если основной проблемой является загрузка данных асинхронно с сервера, я считаю, что до тех пор, пока это правильно обрабатывается, это не проблема производительности. – Katana314

ответ

1

Мои 2 цента: используйте ленивую загрузку xtypes по возможности на клиенте (т. Е. Вы можете определить xtype, но он создается только тогда, когда это необходимо). Особенно, если эти xtypes делают ajax звонки!

+0

Если вы показываете сетки данных, обычно нет необходимости сбрасывать на клиент более 100 записей с сервера за раз, но разрешать пользователю выполнять поиск/поиск/фильтр и т. Д. – TConere

2

JavaScript с невероятной скоростью работает на стороне клиента. Я предполагаю, что Ext.NET похож на AJAX? Если нет, вы можете использовать AJAX для связи с сервером с помощью JavaScript. Он будет довольно быстро настроен так. Однако стиль кодирования сильно изменится, если в настоящее время вы используете элементы управления .NET в DOM с событиями щелчка.

+0

Ext.NET is .NET framework, который включает библиотеку ExtJS. Мы пытаемся добиться того, чтобы DOM был как можно меньше. – hermann

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