VBsupport перешел с домена .ORG на родной .RU
Ура!
Пожалуйста, обновите свои закладки - VBsupport.ru
Блок РКН снят, форум доступен на всей территории России, включая новые терртории, без VPN
На форуме введена премодерация ВСЕХ новых пользователей
Почта с временных сервисов, типа mailinator.com, gawab.com и/или прочих, которые предоставляют временный почтовый ящик без регистрации и/или почтовый ящик для рассылки спама, отслеживается и блокируется, а так же заносится в спам-блок форума, аккаунты удаляются
Если вы хотите приобрести какой то скрипт/продукт/хак из каталогов перечисленных ниже: Каталог модулей/хаков
Ещё раз обращаем Ваше внимание: всё, что Вы скачиваете и устанавливаете на свой форум, Вы устанавливаете исключительно на свой страх и риск.
Сообщество vBSupport'а физически не в состоянии проверять все стили, хаки и нули, выкладываемые пользователями.
Помните: безопасность Вашего проекта - Ваша забота. Убедительная просьба: при обнаружении уязвимостей или сомнительных кодов обязательно отписывайтесь в теме хака/стиля
Спасибо за понимание
Суть продукта
- всплывающее вконтакто-подобное сообщение в левом нижнем углу экрана о том, что кто-то прямо сейчас отвечает в теме, которую вы просматриваете, а также о том, что кто-то прямо сейчас пишет вам ЛС / отправил вам ЛС.
- звук сообщения
- краткий текст
- аватар отправителя
- настройки пользователя вкл / выкл
- анимация типа Skype - "пишущий карандашик"
- перед отправкой вашего поста - алерт, что в теме появились новые сообщения, прочесть да/нет Идея и задача продукта - поддерживать интерес пользователя к теме, к событиям форума. Иллюстрация и демонстрация активности на форуме. Удержать пользователя в данный момент времени на форуме при наличии активности, затрагивающей непосредственно пользователя (ну кто уйдет с форума, если ему пишут ЛС - обязательно дождутся Описание версий, описание разработки, коллективный тестинг на Саппорте
тема http://vbsupport.ru/forum/showthread.php?t=44731
Продукт существенно видоизменен, нагрузка существенно снижена и перестала быть заметной.
для форумов
- 4.х.х
- 3.8.х
Разработчик@GiveMeABreak
Правка шаблонов не требуется Установка:
- залить файлы по FTP
- установить продукт Доступные настройки:
- админка
- основные настройки в кабинете пользователя
Покупка и получение продукта: Цена $35
- оплата на ЯД / WMR / WMZ / карта / PayPal
- получение - в мембер-панели кабинета на Саппорте с привязкой к домену.
Она по-идее должна быть минимальной, близко к погрешности.
Code:
CREATE TABLE `event`
(
id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
user_id int NOT NULL,
thread_id int DEFAULT NULL,
pm_id int DEFAULT NULL,
timestamp int NOT NULL
);
CREATE INDEX event_timestamp_index ON `event` (timestamp DESC);
А запросы вида
Code:
SELECT DISTINCT user_id FROM event WHERE timestamp > ? AND thread_id = ?
с параметрами чего-нибудь типа NOW - 30 и id просматриваемой темы.
Первый прямо при загрузке, второй и последующий с интервалом в 10 секунд (из примера). Никакой особо нагрузки. Для тех кто пишет - видимо по примерно такому же таймауту отправляются события, если кнопки нажимаются. Для гостей эта петрушка видимо не работает, для пользователей можно при желании даже сделать единым запросом на все открытые вкладки (Через postMessage и localStorage скажем общаться). Один запрос раз в 10 секунд уж точно не создаст никакой сверхнагрузки на форум, тем более, что запрос весьма примитивный, любая открываемая страница в десятки раз тяжелее по ресурсам.
Last edited by Core dumped : 10-29-2015 at 04:19 AM.
Reason: localStorage таки с маленькой
kerk
k0t
Join Date: May 2005
Location: localhost
Posts: 28,738
Версия vB: 3.8.x
Пол:
Reputation:
Гуру 20271
Репутация в разделе: 8437
2
Quote:
Originally Posted by Core dumped
Один запрос раз в 10 секунд
на каждого пишущего что либо узера на всем форуме
предположим, что на форуме несколько сотен человек (зарегистрированных), ну скажем 500
50% из них, торчат в темах/ЛС/профиле и что то пишут, стирают написанное, просматривают написанное, пишут опять... нажимают на клавиши вобщем
остальные читают или в других частях форума, где скрипт не работает
это +250 запросов каждые 10 секунд
и да, это только предположение
я не видел ни скрипт, ни запросы, которые он отправляет
Quote:
Originally Posted by Core dumped
любая открываемая страница в десятки раз тяжелее по ресурсам.
да, разумеется
особо это касается четверки
но скрипт страницы отработал и остановился
а с этим скриптом запросы продолжают отправляться
@liner
Эксперт
Join Date: Dec 2008
Location: clubvolvo.ru
Награды в конкурсах:
Posts: 3,987
Версия vB: 4.2.х
Пол:
Reputation:
Expert 2941
Репутация в разделе: 665
Аллея Звезд
0
Quote:
Originally Posted by kerk
а теперь последите за нагрузкой =)
да, при over 500 users online нагрузка та еще.
Но ничего, пользователям нравится.
Luvilla
Гость
Posts: n/a
Quote:
Originally Posted by kerk
остальные читают или в других частях форума, где скрипт не работает
эммм.... нет таких "частей"
сам скрипт подключен на всех страницах, включая те, где в принципе никто ничего не может "typing" - например, в "Справке" или Бан-листе
Quote:
Originally Posted by liner
Но ничего, пользователям нравится.
да, возможно...
kerk
k0t
Join Date: May 2005
Location: localhost
Posts: 28,738
Версия vB: 3.8.x
Пол:
Reputation:
Гуру 20271
Репутация в разделе: 8437
0
Quote:
Originally Posted by Luvilla
нет таких "частей"
я понял, о чем ты =)
да, скрипт подключен на всех страницах
я же говорил о тех узерах, которые пишут, т.е. выполняют какие то действия на которые реагирует скрипт
@Core dumped
Продвинутый
Join Date: Jun 2015
Posts: 62
Версия vB: 3.8.x
Reputation:
Опытный 26
Репутация в разделе: 7
1
Quote:
Originally Posted by kerk
это +250 запросов каждые 10 секунд
Это было актуально где-нибудь в нулевых, когда в ходу был MySQL 3.x и сервера были с 64 мегабайтами памяти на все.
250 запросов за 10 секунд - это 25 запросов в секунду, то есть одна лишняя открытая страница в секунду (в среднем). То есть просто робот Yahoo зашел проиндексировать, например)
На самом деле само по себе число запросов ничего не говорит. Можно сделать тысячу запросов и они пройдут быстрее и с меньшей нагрузкой, чем всего один. В данном случае каждый запрос будет создавать нагрузку примерно нулевую, он простой, без джойнов и по индексу.
Quote:
Originally Posted by kerk
на каждого пишущего что либо узера на всем форуме
предположим, что на форуме несколько сотен человек (зарегистрированных), ну скажем 500
50% из них, торчат в темах/ЛС/профиле и что то пишут, стирают написанное, просматривают написанное, пишут опять... нажимают на клавиши вобщем
остальные читают или в других частях форума, где скрипт не работает
Конкретно с этим спорить особо не буду, лишь отмечу, что давненько не встречачл сообщества, где одновременно находятся 500 авторизированных пользователей. Даже на offtopic.com их меньше, а уж что бы 50% из них писало - ну это, конечно больше на фантастику похоже.
Тем не менее, если это действительно так, то я уверяю, что лишние 250 запросов для такого проекта будут вообще не заметны. Просто потому, что ресурсы им более чем позволят.
kerk
k0t
Join Date: May 2005
Location: localhost
Posts: 28,738
Версия vB: 3.8.x
Пол:
Reputation:
Гуру 20271
Репутация в разделе: 8437
0
Quote:
Originally Posted by Core dumped
лишние 250 запросов для такого проекта будут вообще не заметны
да я собственно и не оспариваю этот момент
на тот случай, когда ресурсов хватает и два-три хака установлены
но когда хаков не один десяток (и среди них какой то из vb/db seo), бывает, что загибаются и оченно не слабые сервера =)
опять же, я просто предложил последить за нагрузкой...
повторюсь, я не видел запросы от этого хака, но там как миниму должен быть запрос данных о юзере (таблица раз), аватарке (таблица два +1 джойн), теме (таблица три +1 джойн), ЛС (таблица четыре +1 джойн) и т.д...
т.е. как минимум у нас запрос массива из 4 таблиц с тремя джойнами, затем этот запрос нужно разобрать и выдать результат на экран всем зарегистрированным на всех страницах