Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Ядро сайта

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: нагрузка
Prizma
Отправлено: 23 Июня, 2016 - 14:56:42
Post Id



Посетитель


Покинул форум
Сообщений всего: 463
Дата рег-ции: Июнь 2012  
Откуда: Санкт-Петербург


Помог: 5 раз(а)




Ядро сайта состоит из ~400+- php файлов, ~1mb - запросы идут на 1 файл и там используется requare_once, чтобы собрать всё это дело.
Не знаком с оптимизационными механизмами, используемых на серверах хостеров.

Будет ли какая то избыточная нагрузку на сервер, которой можно было бы избежать?
Или механизмы кэширования сервера будут держать это дело в ОП и париться не стоит по этому поводу?

Сейчас на локальном сервере среднее время генерации страницы 0.06-0.1 сек. (пока 2/3 от ожидаемого объема написано и подключается для каждого запроса).

Или стоит уже сейчас думать о том, что нужно делить на модули и для каждого запроса includ(ить), только требуемый набор классов?

Сайт интернет магазина 200-500 посетителей в день, с расчетом на рост до 1000-3000 / сутки

(Отредактировано автором: 23 Июня, 2016 - 14:59:55)

 
My status
 Top
Sail
Отправлено: 23 Июня, 2016 - 15:31:44
Post Id



Участник


Покинул форум
Сообщений всего: 1131
Дата рег-ции: Февр. 2014  


Помог: 57 раз(а)




Prizma пишет:
...пока 2/3 от ожидаемого объема написано...
...и для каждого запроса includ(ить), только требуемый набор классов

Быть может, ещё не поздно обратить внимание на автоматическую загрузку классов?
Например:
PSR-0: Autoloading Standard или PSR-4: Autoloader
 
 Top
Prizma
Отправлено: 23 Июня, 2016 - 15:50:48
Post Id



Посетитель


Покинул форум
Сообщений всего: 463
Дата рег-ции: Июнь 2012  
Откуда: Санкт-Петербург


Помог: 5 раз(а)




Sail пишет:
PSR-0: Autoloading Standard

вот этот пример показался очень интересным, те если классы со всеми namespace сделаны по стандарту, то это несколько строчек кода и подгружаются только требуемые классы... просто потрясающе!

Спасибо!
(Добавление)
Страница сгенерирована за 0.046601 секунд. Подгружено классов: 72

И autoload.php больше не нужен Улыбка Крутая тема. Еще раз спасибо Танцующая корова
(Добавление)
Может еще кому понадобится:
PHP:
скопировать код в буфер обмена
  1. $s = microtime(true);
  2. $i = 0;
  3.  
  4. function autoload($className)
  5. {
  6.     global $i;
  7.     $i++;
  8.         $className = ltrim($className, '\\');
  9.         $fileName  = '';
  10.         $namespace = '';
  11.         if ($lastNsPos = strrpos($className, '\\')) {
  12.                 $namespace = substr($className, 0, $lastNsPos);
  13.                 $className = substr($className, $lastNsPos + 1);
  14.                 $fileName  = str_replace('\\', DIRECTORY_SEPARATOR, $namespace) . DIRECTORY_SEPARATOR;
  15.         }
  16.         $fileName .= str_replace('_', DIRECTORY_SEPARATOR, $className) . '.php';
  17.         require $fileName;
  18. }
  19.  
  20. /**
  21.  * Инициализация ...
  22.  */
  23.  
  24. $f = microtime(true);
  25. $time = $f-$s;
  26.  
  27. printf("Страница сгенерирована за %f секунд. Подгружено классов: %d", $time, $i);

(Отредактировано автором: 23 Июня, 2016 - 16:36:27)

 
My status
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Объектно-ориентированное программирование »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB