Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Страницы 1
Как раз этот момент я не упустил, при малом лимите, все что ты описал (магия, композер, найдет класс и т.д.) проноситься как электропоезд (оба варианта бенча). Превращение в паровоз начинается при увеличении лимита товаров. И это при том, что сама отработка всего кода внутри функции происходит все так же быстро.
<link href="{{ asset('css/main.css') }}" rel="stylesheet"> например можно так, если сильно нужно можно вообще без двойных кавычек Лары. Главный момент тут зайти потом на страницу сайта в браузере и посмотреть через панель разработчика как оно получилось и открыть по правой клавеше, для проверки доступа к файлу. Сам файл конечно должен быть в нужной подпапке в папке "public" . типа "public/css".
Логи не смотрел... Долго и я бы не с них начинал.
Начни с проверки роута и куда он ведет, далее в исполняемой методе контролерра нужно про-dd-шить все что плохо лежит. Подозреваю, что данные от пользователей не проверялись и принимались к записи как есть и как итог - какой то кусок кода начал получать непредвиденные данные и ложиться.
Версия Laravel: 5.7
Версия PHP: 7.1
Операционная система и её версия: Win10
Вендор и версия сервера БД: MySQL 5.7.25
Вендор и версия Веб-сервера: OpenServer
Обнаружил потерю по времени в своем приложении при тестировании бенчмарком, может кто то сталкивался с чем то подобным:
Вариант бенчмарка 1:
$products = Product::filter($input);
public static function filter($input) {
$timeStart = microtime(true);
//много кода
dd(microtime(true)-$timeStart);
return $data;
}
Вариант бенчмарка 2:
$timeStart = microtime(true);
$products = Product::filter($input);
dd(microtime(true)-$timeStart);
public static function filter($input) {
//много кода
return $data;
}
Итоги бенчмарка:
При лимите = 9, все вариант работают штатно и быстро, в пределах 0.02-0.03 сек.
а вот при = 110 :
Вариант 1 снова штатно, примерно 0,03+ сек
Вариант 2 выдает выдает 0.3-0.4 сек
Тоесть это возврат данных из функции дает такое торможение? Или я что то упускаю?
Возможно, где-то что-то с роутами, нужно смотреть \routes\web.php. Или еще во многих местах.
Если дело не в роутах(и пока будешь искать) можешь в роуты, в самый конец добавить что то типа:
Route::get('/{qwerty}', function () {
return abort(404);
})->where('qwerty', '.+');
он как-то притормаживает
Может ссылочку на тестовый сбросите? Тестовый же хостинг есть уже?
Иногда и с помощью браузера можно много чего сказать, даже в код залазить не нужно.
В этом примере прекрасно все )
Передаем user, а использовать пытаемся users.
При этом входящее значение - массив, а обращаемся к нему как к объекту. И т.д. и т.п.
Я бы gen2023 посоветовал найти хорошее видео по ларавелю и просто повторять код за людьми. А когда код похож на пример и работает, то начать с ним экспериментировать - добавлять данные, изменять виды данных - баловаться одним словом ) И будет Вам счастье.
З.Ы. Судя по ошибкам типа массив как объект, может стоит еще и PHP подучить? А с оглядкой на "free" еще и основы английского.
Добрый день,
Так уж вышло, что попал я неопытным разработчиком, в виде первой работы в контору, где я - единственный программист-бекендер, все остальные вокруг СЕО и фронтенд, за 8 месяцев сам разобрался и перелопатил кучу сайтов на известных CMS-ках, в т.ч. сделал 2 магазина с нуля. Уже имел дело "по мелочам" и с 2 проектами на Laravel в виде доделок и исправления ошибок после других программистов. Даже VueJs для одного из них выучил, что бы можно было править то что нужно.
И тут прилетел абсолютно новый проект (портал) на Laravel уже прям под меня. Проект не простой, но сначала вроде как все шло неплохо: отработал ТЗ, настроил поддомены, роуты, логин по почте и через соцсети, поставил и заюзал пакет с нормальной локализацией и многое другое. И постепенно углубляясь понял, что мне хватает общих знаний по структуре проектов на Laravel и организации его будущей работы.
А теперь по существу... самый тупиковый для меня вопрос:
будущий сайт - портал, и по ТЗ должны быть отдельные админ-части для:
- пользователя,
- партнера,
- админ-менеджера от портала,
- технический администратор.
Решил для "общности системы" поставить единую админку(конструктор) z-song/laravel-admin и разделить ее по правам на части. Установил, смог объединить таблицы юзеров с сайта с админ-юзерами, сделал единый вход на сайт и в админку, + еще по мелочам. Но тут уперся, в то, что система юзеров админки все-таки не оч. хорошо конектиться с не-админ юзерами. То есть - дальше либо еще более жестко перепиливать эту админку, либо сдаваться и искать другие решения (писать с нуля, а для админа оставлять эту). У меня уже подозрение, что как раз второй вариант более правильный, так как сама по себе админка, такого рода, всё-таки предназначена лишь для Администратора и внутренней системы самого сайта, а не для разных групп пользователей.
Вопрос: Возможно, кто-то уже занимался сайтами-порталами, и особенно их админ-частью и сможет подсказать правильный путь? Код не столь важен, как сам принцип. Буду очень благодарен за ответы.
Не, нечеткий никак, тут действительно ElasticSearch нужен будет.
Хотя смотря какая задача, есть библиотеки синонимов для полнотекстового, а можно просто побаловаться с зачисткой окончаний слов - "ручка", "ручку", "ручкой" искать как "ручк".
Сухие цифры - с отключенным кешированием, в т.ч. и SQL_NO_CACHE во всех запросах, при всех параметрах фильтра, и наличии слова для поиска (разные для каждого теста), document в браузере получаю в основном за 0,07-0,5 сек. Сам запрос, в отдельности, протестировать в ближайшее время не смогу. Как то так.
Неужели такая огромная будет БД? ))
На одном проекте хорошо разобрался и реализовал FullText (мускл 5.7 InnoDB) и в итоге при размере БД в 6КК строк в основном в трех таблицах (1гиг с индексами), ищет почти мгновенно. И никакие надстройки не понадобились.
Да, тоже было такое, фактически как раз разбираюсь как и что. У себя на локалке сделал так:
APP_URL=mysite.loc
SESSION_DOMAIN="${APP_URL}"
На самом сайте разлогинился, удалил куки в браузере и теперь вроде работает.
Удачи!
Страницы 1