Здравствуйте. Решил заняться изучением веб программирования. Так как являюсь обладателем cubieboard2 - поднял ламп сервер и решил изучать php. Wordpress выдает на нем страничку за 3-5 секунд поэтому решил изучать что то более легковесное.
Сначала попробовал yii2 вроде бы все хорошо. Так как в последнее время отовсюду слышатся крики про laravel, решил его попробовать. Он мне понравился больше, разного рода плюшками из коробки. Да и примеров\готовых решений на данный момент для него больше. Скачал
стартовый проект и запустил.
Производительность меня сильно удивила. Генерация простой странички без обращений к бд 1.5-2 секунды. Используя вот
этот метод кеширования я получил производительность в районе 1 секунды на запрос. Затем я попробовал пустой проект
composer create-project laravel/laravel your-project-name --prefer-dist
300 миллисекунд для получения пустой вьюшки. Кеширование тем же методом не дает видимых результатов вообще. Сервер держит в районе 12 запросов в секунду.
Я также тестировал yii2. Запрос About метода (текстовая страничка) 200 миллисекунд. С кешированием 50-100. Дальше контроллер, вью, модели получены путем генерации. Без кеширования получаем 3 записи и рисуем табличку(обращение к индекс методу) - в районе 300-400 миллисекунд. С кешированием время падает до 50-100 миллисекунд. Сервер начинает выдерживать 40-50 запросов в секунду.
Кеширование в yii использую такое (для тестирования):
$key = 'ContentController-actionIndex';
$value = Yii::$app->cache->get($key);
if ($value === false)
{
$searchModel = new ContentSearch;
$dataProvider = $searchModel->search(Yii::$app->request->getQueryParams());
$value = $this->render('index', [
'dataProvider' => $dataProvider,
'searchModel' => $searchModel,
]);
Yii::$app->cache->set($key, $value, 1000);
}
return $value;
Вопрос в том, что я делаю не так с laravel? Можно ли еще ускорить yii2?
Update 1: Использовал APC для кеширования.