2014-09-03 2 views
9

Я создал большое приложение AngularJS, которое выполнялось до сих пор.
Моя проблема началась, когда некоторые пользователи (с очень старыми компьютерами с один CPU) жаловались на то, что приложение работает очень медленно.AngularJS + CPU с одним сердечником = почти 100% CPU

Я открыл диспетчер задач, и я вижу, что вкладка всегда находится на 70% - 100% CPU (при использовании одного ядра ЦП).

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

Есть ли способ справиться с этим? Чтобы сообщить Angular, чтобы выполнить его переваривание циклов less раз?
Неужели кто-нибудь сталкивался с подобной проблемой? Любой отзыв будет отличным для меня.

+0

Может быть, это поможет? https://github.com/angular/angular.js/issues/1534 – c97

+0

Спасибо за ваш ответ. Проблема заключается в одном процессоре, а не в IE8. Я отредактирую свой вопрос, чтобы быть более ясным. –

ответ

5

Я никогда не видел способов уменьшить количество циклов, называемых циклами.

Однако есть несколько способов повысить производительность вашего приложения.

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

После того как вы это вы можете сосредоточиться на следующем:

  1. Отключение наблюдателей, которые не будут использовать в малейшей
  2. Избегайте нг-повторения, если это возможно, и/или использовать bindonce директиву
  3. Используйте пагинацию иметь меньшие наборы данных

для получения более подробной информации вы можете обратиться к следующим статьям:

+0

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

+1

Есть ли у вас примеры проблем с этими одноядерными компьютерами? Как проблема с перемещением мыши? –