- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Что делать, если ваша email-рассылка попала в спам
10 распространенных причин и решений
Екатерина Ткаченко
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
А вдруг случится чудо и кто-то сможет определить проблему…
Только для очень прошаренных спецов :)
Есть сайт, работает шустро. Но как только активируем функцию Livescore (каждые 20 сек у юзера обновляются результаты спортивных матчей), то сильно возрастает нагрузка на сайт. И когда больше 100 юзеров онлайн, то совсем тяжело сайт работает. Как только отключаем – сразу все приходит в норму, сайт летает и на 200-300 юзерах онлайн.
Суть такая. В матче забит гол – админ в админке у соответствующего матча изменил счет и воспроизвел звук гола. Автоматически у юзера на сайте изменяется счет, мигает строка с этим матчем, проигрывается звук гола. Запрос на то, есть ли изменения, отправляется каждые 20 секунд. Если есть изменения – берем из файла новый счет, проигрываем звук, мигает строчка.
(Так задумано по крайней мере, а что там разработчик написал, я не понимаю :)
Подгружаем данные из html файла (blades.php) – все равно большая нагрузка.
Вот код:
Кто-то может понять, в чем косяк? Готов отблагодарить финансово, если кто-то найдет проблему.
Кто-то может понять, в чем косяк? Готов отблагодарить финансово, если кто-то найдет проблему.
Судя по всему, раз в 20 секунд обновляется страница. По хорошему, если изменений нет, то надо давать отлуп, а не кучу кода.
Можешь не благодарить.
перевести на сокеты? так как polling не самый лучший вариант
в ларавеле кстати есть в коробке broadcasting
И что делает функция render_pages('livescore_live')?
И еще бы содержимое этого blade.php шаблона получить, а точнее двух
Раз в 20 секунд обновлять кеш где нибудь в шаред мемори и оттуда простым скриптом в 5 строк брать инфу, а не тянуть фреймворк на каждый чих.
Можно еще данные отдавать через сгенеренный файл, закешировать через nginx на 20 секунд страницу с данными.
Или как выше предложили сокеты.
Подгружаем данные из html файла (blades.php) – все равно большая нагрузка.
Подозрительно динамичное расширение у html файла.
Мелочь, но излишнее обращение к диску/кэшу.
У вас скорее всего нагрузка может идти от:
render_pages('livescore_live');
Что там делается не понятно.
А еще ТС, если честно и положа руку на сердце у вас очень стрёмные кодеры на laravel'е. Laravel из коробки дружит с VueJS на котором можно построить офигенный интерфейс, есть сокеты в коробке, а у вас делают какой то говнокод с рендером html в переменную и отправкой его обратно через json, хотя по сути можно отправить просто счет, флаг звука и анимации, а отрендерить на клиенте.
laravel - это php .
vuejs - это js
Вопрос - с фига ли кодер на пхп стремный, если он не знает vuejs ?
Кто тупит? php? apache? nginx? mysql? искать по top в консоли зайдя по ssh, смотреть нагрузку на CPU
laravel - это php .
vuejs - это js
Вопрос - с фига ли кодер на пхп стремный, если он не знает vuejs ?
Где я такое написал? Дергать вьюху непонятно в каком месте, непонятно каким образом её наполняя это и есть говнокод
Процитирую себя специально для вас чтоб через строку прочитать было невозможно даже при сильном желании
А остальное это указание на то что в коробке уже есть элегантные решение и на laracast'e есть море примеров. Да и уж мне кажется повесить классы при помощи jQuery может любой бэкенд мидл, а джуниору рано в laravel как и в любые другие фреймы, начинать желательно с основ и постепенно, на примере тех же cms
Кто тупит? php? apache? nginx? mysql? искать по top в консоли зайдя по ssh, смотреть нагрузку на CPU
Создается много процессов php-fpm: pool, которые жрут по 10-15%.
sql в районе 10%.