Очень медленно работает сайт локально. Как увеличить скорость?

Ссылка скопирована
1 ответ

сайт локально развернул на linux под lemp. Но работает очень медленно по сравнению с его копией на хостинге.

Подскажите какие параметры php и базы данных и nginx подправить чтоб работало шустрее?

Дополнительно:

линукс стоит как виртуалка или в докере?

  • А linux на каком железе поставили? Или виртуалка? Есть какие-то логи? Опишите детально что там у Вас. А то ни конфигов, ни логов, ни описания хард/софт
  • Дмитрий Кузнецов, обычный линукс. на рабочей станции. Linux Mind.
  • Слава, ssd/hdd?
  • Sand, обычный линукс. Linux Mint на платформе Unbuntu 22.04

    железа 16 гигов. процессор I5. Ну обычно всё шустро работает локально. Без всяких докеров. Обычный nginx php8.1-fpm,

    а тут выкачал ларавеловский сайт и он медленно работает. долгий отклик при переходах между страницами.

  • Дмитрий Кузнецов, ssh. обычные сайты летают.
  • Оказывается вот в чем было дело! Xdebug был подключен. Отключил его в xdebug.so и все стало быстро работать.
  • Слава, тогда нужно смотреть что тормозит в ларавеле и настроен ли веб сервер как нужно для ларавел (всё описано в доках ларавела).
    и что значит обычные сайты? html+css? или и php + sql?
  • Слава, пиши в ответы)
  • Оказывается вот в чем было дело! Xdebug был подключен. Отключил его в xdebug.so и все стало быстро работать.

    • Как это выяснилось?
    • Капитан Пронин, как как? закомментировал xdebug в php.ini, ребутнул php8.1-fpm и nginx и начался полет со стремительной скоростью. уж больно в логах ошибок смущала надпись
      2023/04/14 09:54:11 [error] 8913#8913: *6 FastCGI sent in stderr: "PHP message: Xdebug: [Step Debug] Could not connect to debugging client. ....

      хотя может быть нужно было урезать настройки xdebuf. ато было включено слишком много. xdebug.mode = debug,develop,trace

    • Слава,

      уж больно в логах ошибок смущала надпись

      понятно

    Нужно решить такую задачу?

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

    Заказать помощь
    Лучший ответ
    1
    Максим Павлов Ответ

    Для увеличения скорости работы сайта локально, можно предпринять несколько шагов:

    1. Оптимизация базы данных: убедитесь, что все таблицы имеют правильные индексы, что запросы оптимизированы и что база данных настроена правильно.

    // Пример оптимизации запроса
    SELECT * FROM users WHERE username = 'john_doe';
     
    // Правильный индекс
    CREATE INDEX idx_username ON users (username);

    // Пример оптимизации запроса SELECT * FROM users WHERE username = 'john_doe'; // Правильный индекс CREATE INDEX idx_username ON users (username);

    2. Кэширование данных: используйте кэширование для уменьшения количества запросов к базе данных. Можно использовать Memcached, Redis или другие инструменты для кэширования.

    // Пример кэширования данных
    $memcached = new Memcached();
    $memcached->addServer('localhost', 11211);
     
    $data = $memcached->get('key');
    if (!$data) {
        $data = fetchDataFromDatabase();
        $memcached->set('key', $data, 3600); // кэшировать на 1 час
    }

    // Пример кэширования данных $memcached = new Memcached(); $memcached->addServer('localhost', 11211); $data = $memcached->get('key'); if (!$data) { $data = fetchDataFromDatabase(); $memcached->set('key', $data, 3600); // кэшировать на 1 час }

    3. Оптимизация кода: убедитесь, что ваш код оптимизирован и использует эффективные алгоритмы. Избегайте лишних циклов, проверок и запросов.

    // Пример оптимизированного кода
    for ($i = 0; $i < count($array); $i++) {
        // делать что-то
    }
     
    // Оптимизированный код
    $count = count($array);
    for ($i = 0; $i < $count; $i++) {
        // делать что-то
    }

    // Пример оптимизированного кода for ($i = 0; $i < count($array); $i++) { // делать что-то } // Оптимизированный код $count = count($array); for ($i = 0; $i < $count; $i++) { // делать что-то }

    4. Использование CDN и кеширование статических ресурсов: загрузка статических файлов (CSS, JavaScript, изображения) с CDN и кеширование их на стороне клиента поможет ускорить загрузку страниц.

    5. Настройка сервера: убедитесь, что ваш веб-сервер правильно настроен и использует оптимальные параметры. Можно использовать gzip-сжатие, HTTP/2, оптимизировать конфигурацию PHP и т.д.

    Следуя этим рекомендациям, вы сможете значительно увеличить скорость работы вашего сайта локально.

    Другие ответы (0)

    Пока нет других ответов. Будьте первым, кто поможет автору.

    Ответить на вопрос

    комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *

    Вам также может быть интересно