1gb - .net, ASP, Windows, Apache, PHP хостинг
База документов / Технический регламент, правила / Быстродействие, ресурсы сервера / Если сайт открывается медленно

Если сайт открывается медленно

смотреть документ на языке:    на украинском украинский   на русском русский

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

Термины

Время выполнения скрипта – время, за которое сервер формирует содержимое страницы сайта.
Процессорное время – время работы свободного от других задач процессора, которое требуется для выполнения скрипта.

Пример: Если процессор сервера не занят, процессорное время примерно равно времени выполнения скрипта. Если процессор сервера занят на 50%, время выполнения скрипта будет в два раза больше процессорного времени, которое затрачивается на генерацию страницы.

Принципы работы сервера

Суть услуги виртуального хостинга заключается в том, что на одном физическом сервере работает множество сайтов. Сервер способен обработать около сотни запросов в секунду, и этими ресурсами сервера пользуются сайты клиентов. Средняя нагрузка сервера поддерживается на таком уровне, чтобы сервер никогда не был занят на 100%, при этом на каждый новый запрос клиента гарантируются свободные серверные ресурсы, позволяющие его обслужить.

В нормальном режиме работы на один запрос к странице сайта (скрипту) обычно затрачивается в среднем около 1% ресурсов сервера, от 0.01 до 0.1 секунд процессорного времени. Сервер хостинга не предназначен для ресурсоемких операций запросов.

Поскольку одновременно исполняется десятки процессов, реальное время генерации страницы в несколько раз больше процессорного времени, которое требуется для работы скрипта.

Пример: Стандартным общепринятым временем генерации страницы портала PHP Nuke или форума PHPBB является от 0.2 до 0.5 секунд – это считается нормальной и даже хорошей скоростью генерации страницы. Однако полностью свободный сервер смог бы справится с такой операцией гораздо быстрее, почти мгновенно, ведь типичное процессорное время на генерацию страниц этих проектов – от 0.03 до 0.1 секунды.

Ресурсоемкие скрипты

Некоторые системы работают таким образом, что обработка одного запроса может занимать существенное процессорное время. Например, обработка поискового запроса форума PHPBB может занимать около 1 секунды процессорного времени. Такая «тяжелая» страница формируется от 3 до 10 секунд, в зависимости от загрузки сервера. В качестве исключения для построения отдельных сложных страниц проекта такая задержка является нормальной.

Некоторые портальные системы, среди них Mambo, "Битрикс", некоторые другие, потребляют около 1 секунды процессорного времени на создание каждой страницы, включая главную страницу проекта. Это принципиальный недостаток (ошибка), которую допустили разработчики этих систем, или программист проекта, если система сайта – его собственная разработка.
Для нашего примера, если сервер абсолютно свободен, страница будет сформирована за секунду (но не быстрее!). Это уже не является хорошим результатом. На практике для нормально работающего сервера хостинга, который работает в штатном режиме, формирование такой страницы может занимать от 3 до 10 секунд.

Исходя из принципов работы виртуального хостинга, которые описаны выше, более быстрая генерация страниц сайтов для таких проектов невозможна. В том уникальном случае, если сервер хостинга свободен более чем на 80% и заметных конкурентов у вас нет, время генерации страниц может временно подниматься до 1 – 2 секунд. Однако не нужно обольщаться, ни один провайдер виртуального хостинга не поддерживает столь низкую нагрузку серверов.

Решение, перспективы

Для ускорения работы подобного проекта есть единственный вариант – выделенный сервер, процессор которого не загружен обработкой других запросов. Таким образом, время генерации страниц будет сравнима с процессорным временем.

Заметим, однако, что даже в режиме выделенного сервера возможна генерация не более 45 страниц в минуту – больше не позволит процессор. Это дает всего около 25 000 посещений в обычный 10 часовой день (около 5 000 – 10 000 уникальных пользователей) даже на выделенном сервере. Для серьезного проекта это очень маленькие цифры.
Если на генерацию одной страницы вашего проекта требуется более 0.5 секунд процессорного времени – это тревожный знак, говорящий о том, что у вашего проекта сложное будущее, и вам нужно задуматься об используемых технологиях и системах.

 

отправить комментарий, замечание, поправку
 


 

Мы всегда готовы ответить на ваши вопросы!
 
  • Любые вопросы и поддержка - support@1gb.ua
  •  

     
       
     
    Наверх     
    Поддержка: support@1gb.ua