Перейти к содержанию
Официальный форум поддержки Simpla

Ускоряем работу сайта в 2 раза


Рекомендуемые сообщения

Добрый день,  хочу представить вашему вниманию небольшую JS библиотеку, которая способна ускорить загрузку страниц сайта в несколько раз, ускорение происходит за счёт того, что пользователь загружает странцу сайта GET запросом наведя мышь на ссылку, ещё до того как он на неё кликнет, а когда он кликает страница открывается сразу, если страница не догрузилась, а пользователь перевёл мышь на другую ссылку то запрос обрывается.

 

Установить это крайне просто, для начала загрузим библиотеку, для этого качаем её отсюда

 

И кладём в папку js вашего шаблона.

 

А после в index.tpl вставляем следующий код в самый конец шаблона до закрывающего тега </body>:

<script src="design/{$settings->theme|escape}/js/instantclick.js" data-no-instant></script>
<script data-no-instant>InstantClick.init(100);</script>

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

 

Страница проекта

Гит

Ссылка на сообщение
Поделиться на другие сайты

Спасибо. Поставлю себе)

 

upd

Что то мне кажется что это решение конфликтует со слайдером. Иногда долго грузиться стал

Изменено пользователем eXtatic
Ссылка на сообщение
Поделиться на другие сайты

тогда используй "data-no-instant" чтобы выбрать те элементы, которые грузиться не должны, глянь сайт, там всё есть+ открой firebug и посмотри скорость загрузки до и после подключения скрипта+глянь есть ли какие конфликты в консольке отладочной

Ссылка на сообщение
Поделиться на другие сайты

Я полагаю, что будет плодится дополнительные запросы к серверу, что увеличит нагрузку.

Представьте ситуацию, когда навел на ссылку, прошел процесс загрузки(запросы к БД, обработка php скриптов), человек переводит на новую ссылку и снова начинается загрузка, и так на сайты внутренних ссылок ~150 шт, Представляете, что перед кликом сколько ссылок проводит один пользователь. Что думаете?

Ссылка на сообщение
Поделиться на другие сайты

Я полагаю, что будет плодится дополнительные запросы к серверу, что увеличит нагрузку.

Представьте ситуацию, когда навел на ссылку, прошел процесс загрузки(запросы к БД, обработка php скриптов), человек переводит на новую ссылку и снова начинается загрузка, и так на сайты внутренних ссылок ~150 шт, Представляете, что перед кликом сколько ссылок проводит один пользователь. Что думаете?

А на что nginx и memcached нужен? Я могу кинуть статистику по своему серверу, нагрузка у меня и так небольшая 1000 уников, сравню, БД кстати mariaDB со включённым кэшем.

Ссылка на сообщение
Поделиться на другие сайты

А на что nginx и memcached нужен? Я могу кинуть статистику по своему серверу, нагрузка у меня и так небольшая 1000 уников, сравню, БД кстати mariaDB со включённым кэшем.

 

Я не говорю про конкретные показатели, просто размышление в слух, и конечно нужно посмотреть насколько кол-во запросов возрастет.

Ссылка на сообщение
Поделиться на другие сайты

Я не говорю про конкретные показатели, просто размышление в слух, и конечно нужно посмотреть насколько кол-во запросов возрастет.

Могу сделать бенч с лоадимпакта и глянуть что к чему, вобще если у тебя апач стоит скинь статистику, на nginx никак не отразится толком, у меня система настроена так, что в лёгкую потянет и 5к человек онлайна, если ширина канала позволит

Ссылка на сообщение
Поделиться на другие сайты

У меня nginx и стоит на gentoo

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

Ссылка на сообщение
Поделиться на другие сайты

тогда вырубай весь ajax с сайта =)

Ajax работает на нужные функции, и не делает постоянных запросов не нужных

Ссылка на сообщение
Поделиться на другие сайты

Ajax работает на нужные функции, и не делает постоянных запросов не нужных

даже на 5% не возрасла нагрузка на канал, сервис, проц при том, что скорость открытия увеличилась раза в 2, так что я думаю это крайне уместно, учитывая какой бонус это даёт покупателям из регионов с сотовыми модемами.

Ссылка на сообщение
Поделиться на другие сайты

даже на 5% не возрасла нагрузка на канал, сервис, проц при том, что скорость открытия увеличилась раза в 2, так что я думаю это крайне уместно, учитывая какой бонус это даёт покупателям из регионов с сотовыми модемами.

Соглашусь, потестирую, думаю Вы правы.

Ссылка на сообщение
Поделиться на другие сайты

После установки у меня после клика по ссылке - страница открывается мгновенно и сразу же открывается пустая страница под таким же адресом. Что это значит и как это исправить?

Ссылка на сообщение
Поделиться на другие сайты

и правда слайдер (NivoSlider) глючит. даже не глючит, а вообще не работает -
постоянная загрузка.

не поскажете куда  data-no-instant вставлять, чтобы это исправить?

Ссылка на сообщение
Поделиться на другие сайты

Протестировал, да, действительно работает все немного быстрее, но все же, я останусь без этой поделки :)

А конфликт может быть только на уровне JS(Jquery)

Ссылка на сообщение
Поделиться на другие сайты
  • 1 год спустя...

Задумка очень интересная, но наверное требует доработок. Было бы лучше, чтобы подобную процедуру делали сами браузеры.

Ссылка на сообщение
Поделиться на другие сайты

Если б задумка была хорошая, то разработчики браузеров давно бы такое реализовали.

В том-то и деле, что задумка безответственная и безобразно плохая.

 

В применении к магазину и вообще хоть чуть интерактивным сайтам вообще чушь получается. Например:

1. Пришел посетитель с поисковика на страницу товара.

2. Поводил мышкой, предложенный скрипт молча скачал несколько ссылок, в том числе пустую страницу корзины.

3. Положил товар в корзину.

4. Открыл корзину - она будет пустая, потому что покажется из кеша, так как скачана ранее.

5. Положил второй товар в корзину.

6. Открыл корзину - она опять пустая по той же причине...

 

То же самое с другими меняющимися элементами сайта, например, с последними просмотренными.

Ссылка на сообщение
Поделиться на другие сайты

 

...учитывая какой бонус это даёт покупателям из регионов с сотовыми модемами.

Да они будут "просто ликовать", столько трафика сожрано впустую, шик! Не забывайте что у мобильных провайдеров до сих пор тарификация по траффику.

Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...