2012-06-21 3 views
1

Есть ли правильный способ, уравнение или техника вообще сказать: «Моему веб-приложению необходимо поддерживать N количество пользователей, которые с помощью этого уравнения/техники/rockHardExperience говорят мне, что мне нужно поддерживать X количество одновременных запросов страниц "?всего зарегистрированного или совпадающего пользователя

Из моих исследований и/или кишечнике чувство, кажется, что это будет что-то вроде:

totalLoadCapabilityRequired = (totalUsersN x .10) * .5

where .10 is for roughly 10% on at any given time

and the whole thing multiplied by 50% to suggest a 50% chance of those total users online executing a request at roughly the same time

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

+0

Ответ зависит от того, для чего эти пользователи будут использовать вашу систему. Это для того, чтобы смотреть что-то один раз в день? Являются ли они центрами, которые будут постоянно использовать вашу систему в течение рабочего дня? –

+0

Беда в том, что у вас будут разные уровни самоотдачи - я использую SO гораздо чаще, чем я использую LinkedIn, несмотря на то, что вы подписались на обоих - и на разных уровнях системного напряжения - SO динамически и очень много запросов для каждая загрузка страницы, мой собственный веб-сайт настолько статичен, что он может быть подан с CD-ROM-диска ... – sarnold

+0

lol, Чтобы попытаться сделать ясность своим высокодинамичным веб-приложением, я ожидал бы один или два раза в день на человека, в течение 15-20 минут. – Ryan

ответ

2

Вот несколько вещей, чтобы думать о том:

  1. Что промежуток времени, в котором вы ожидаете большую часть ваших визитов? Если это офисное приложение в одной и той же физической компании, планирование вашей емкости должно основываться на 8-часовом периоде. Если большинство посещений приедут с одного и того же континента, вы можете запланировать за 12-часовой период и т. Д. Основы вашего посетителя распространяются на этом.

  2. Какие страницы, которые вы ожидаете, будут самыми популярными и насколько тяжелы эти страницы (например, сколько страниц вы можете загрузить за одну секунду)? Получите понимание частей, которые могут извлечь выгоду из кеширования, чтобы выжать больше производительности.

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

  4. Создайте свое приложение таким образом, чтобы вы могли снимать снимки за каждый 500-й запрос; вы можете использовать такие инструменты, как xhprof, для создания файлов, которые можно запускать с помощью инструментов cachegrind для анализа производительности при ее запуске.

Короче говоря, нет никакой всеобъемлющей формулы :) на футбольное поле не понять вашу формула, вероятно, будет достаточно хорошо, но принять вышеуказанные пункты во внимании.

+0

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

+0

Я вижу, как кажется, что нет действительно хорошего ответа, не выполняя некоторые эксперименты, зависящие от реализации. – Ryan

+0

@ Ryan, выполняющий эксперименты, помогает повысить надежность ваших результатов, так что это всегда хорошая идея :) –

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