Сколько памяти, прежде чем она станет грубой? - PullRequest
32 голосов
/ 09 февраля 2012

В настоящее время я работаю над веб-приложением, и меня вдохновила пара различных приложений (в основном Cloud9IDE), которые описывают, как они хранят большую часть своего интерфейса в объектах javascript.Это делает невероятно легким добавление функций в будущем, а также предоставляет возможности расширения в будущем.

Вопрос в том, в какой момент хранение данных в памяти (с помощью javascript) становится грубым.Я создаю социальную сеть (например, Twitter), и, по сути, я буду хранить объект для каждого «твита», а также некоторые более широкие объекты для элементов интерфейса.

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

1 Ответ

18 голосов
/ 09 февраля 2012

Абсолютно положительно, не используйте близко к 4 ГБ памяти.Большинство людей используют 32-битные браузеры, поэтому браузер все равно не может поддерживать 4 ГБ:)

С практической точки зрения помните, что чем больше памяти вы занимаете, тем медленнее будет работать ваше приложение.Современные процессоры Intel / AMD (я не знаю о ARM) обращаются к регистрам примерно в 100 раз быстрее, чем к памяти, которая не находится в кеше, поэтому, если вы используете много памяти, вы получите thrashing , чтозначительно замедлит работу вашего приложения.

Итак, предполагая, что вы хотите, чтобы пользователи для вашей социальной сети, вы попытались сделать так, чтобы ваш сайт хорошо работал на как можно большем количестве компьютеров.Миллионы и миллионы людей все еще используют компьютеры с Windows XP, которым более 5 лет.Эти машины могут иметь всего 512 МБ ОЗУ, поэтому, если вы используете несколько сотен мегабайт, вы можете уничтожить всю память, а не только кэш-память процессора, поскольку ядро ​​продолжает выгружать страницы, которые вы хотите использовать.Так что, как правило, я бы рекомендовал оставаться ниже 150-200 МБ памяти.GMail занимает ~ 100 МБ памяти в Chrome для Linux, поэтому я считаю, что поддерживать GMail - разумная цель.

Еще одно преимущество, заключающееся в том, что использование памяти остается относительно низким, заключается в том, что ваши пользователи могут легче просматривать ваш сайт насмартфонIPhone 3GS (все еще используется много) имеет только 256 МБ ОЗУ, поэтому оставаясь ниже 200 МБ на вашем сайте, пользователю смартфона будет проще загружать ваш сайт без необходимости уничтожать процессы без разбора.

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