одновременные пользователи могут поддерживать решение Apache + PHP

Каким образом любые одновременно работающие пользователи могут поддерживать решение Apache + PHP? Пожалуйста, не увязните в ограничениях Mysql - мы используем LAP без M, так как на серверной части мы храним около 2-8 ПБ.


person arvind sharma    schedule 24.06.2010    source источник
comment
Я думаю, что этот вопрос слишком широк, чтобы на него можно было ответить в его нынешнем состоянии.   -  person Pekka    schedule 24.06.2010
comment
Без дополнительной информации об этом сказать невозможно. Какое будет среднее время между запросами пользователей? Делает ли он агрегирование данных? Сколько информации на страницах? Сделайте тест и экстраполируйте.   -  person Peter Tillemans    schedule 24.06.2010
comment
Мы предлагаем многоуровневую архитектуру служб, в которой серверной частью будут СЛУЖБЫ REST, обслуживаемые комбинацией приложений .NET и Java. Решение PHP будет соответствовать компоненту сервера приложений в разделе «Динамическое содержимое». Уровень PHP будет CakePHP с использованием jQuery для Ajax и будет использовать API XML RPC JSON для выполнения служебных вызовов к среде выполнения java и серверам .NET. Таким образом, мы сможем создать высокопроизводительную магистраль предоставления услуг.   -  person arvind sharma    schedule 24.06.2010
comment
возможный дубликат Как тщательно тестировать сайт?   -  person Gordon    schedule 24.06.2010


Ответы (2)


Почему бы не попробовать:

  • ab - инструмент тестирования HTTP-сервера Apache

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

Также см. Ответы на Как тщательно тестировать сайт

person Community    schedule 24.06.2010

Как любые одновременные пользователи

Хорошо, вот ваша первая проблема - HTTP не имеет состояния, поэтому ваш веб-сервер может поддерживать бесконечное количество пользователей - до тех пор, пока они на самом деле не отправляют никаких запросов на веб-сервер. На самом деле ограничивающим фактором является количество одновременных подключений к веб-серверу. Это будет определяться:

1) частота, с которой пользователи делают запросы

2) время, необходимое для обслуживания запроса

3) продолжительность keepAlive

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

Есть хорошие книги по настройке производительности Apache, которые позволят вам оптимизировать веб-сервер для вашего приложения.

Конечно, если у вас есть общая подложка для данных, то ничто не мешает вам добавлять дополнительные веб-серверы поверх хранилища (неограниченная горизонтальная масштабируемость) - так что именно подложка хранилища в конечном итоге ограничивает емкость / производительность системы (пока вы не посмотрите при настройке кода и хранилища). И вы получаете дополнительное преимущество в виде повышенной устойчивости.

Конечно, ПК с довольно низким уровнем производительности (ЦП 2 ГГц, ОЗУ 2 ГБ) должен комфортно обрабатывать до 500 текущих подключений - особенно если вы используете приложение, ориентированное на базу данных, тогда вы также получите больше преимуществ от добавления серверов, а не от обновления ЦП / ОЗУ.

HTH

C.

person symcbean    schedule 24.06.2010
comment
Мы предлагаем многоуровневую архитектуру служб, в которой серверной частью будут СЛУЖБЫ REST, обслуживаемые комбинацией приложений .NET и Java. Решение PHP будет соответствовать компоненту сервера приложений в разделе «Динамическое содержимое». Уровень PHP будет CakePHP с использованием jQuery для Ajax и будет использовать API XML RPC JSON для выполнения служебных вызовов к среде выполнения java и серверам .NET. - person arvind sharma; 24.06.2010
comment
Таким образом, мы сможем создать высокопроизводительную магистраль предоставления услуг. У нас возникает вопрос: • Каким образом любые одновременно работающие пользователи могут поддерживать решение Apache + PHP? Пожалуйста, не увязните в ограничениях Mysql - мы используем LAP без M, так как на серверной части мы храним около 2-8 ПБ. • Сколько пользователей могут поддерживать nginx + PHP. Предположим, мы будем использовать стандартный носитель, размещенный в облаке. Размер сервера Linux (ОЗУ / диск) - 4096 МБ / 160 ГБ. - person arvind sharma; 24.06.2010
comment
База данных Pb, и вы пытаетесь приспособить решение к одному размещенному серверу! У вас есть более серьезные проблемы, чем беспокоиться о том, какое программное обеспечение веб-сервера использовать. - person symcbean; 24.06.2010