Володя
С нами с 18 декабря 2012; Место в рейтинге пользователей: #646 минут назад
Спасибо, я его смотрел но не уверен, что он поможет в данной ситуации. Я добавил кастомный плагин и он решил эту проблему, удивительно что у меня у од...
[Внимание] SQL-инъекция через miniShop2 (msPayment) в MODX — разбор и поиск причины 5
4 часа назад
Всем привет, кто может подсказать, столкнулся с проблемой (msMCD 2.2.1):
Для добавления товара использую сниппет msMCDCount
При нажатии на +, товар ...
[msMCD] Динамическое обновление мини-корзины miniShop2 46
Сегодня в 07:50
Для решения данной проблемы нужно просто добавить NULL в значение по-умолчанию для поля position на уровне базы данных.
SocialNetworks 20
21 июня 2025, 11:02
Прошло уже больше 3-х лет с выхода компонента, но что то развития нет:
Нельзя создавать отдельные меню, только делать вложения в основное Нельзя коп...
Компонент для создания кастомного меню 18
20 июня 2025, 11:16
Пакет замечательный, использую во всех новых проектах с моментам выхода, спасибо автору!
Есть одно замечание, которое надеюсь появится в следующей ве...
StaticElementsLive 31
19 июня 2025, 21:26
Дошли руки до обновления ), выпусти версию 1.0.3-pl
Попробуйте… я просто убрал код, вызывающий ошибку, но к сожалению самому проверить сейчас негде.
YaSmartCaptcha - защитите ваши формы от спама умной капчей от Яндекс 29
19 июня 2025, 16:46
Кстати вот нужно создать новый бакет и надпись что трафик платный.
Modhost и облачное хранилище S3 (timeweb cloud) 6
19 июня 2025, 14:34
Этот функционал очень нужен, поддерживаю. Просто вывести цены товаров в комплекте на вкладке комплекты
msProductKits - удобное управление товарами-комплектами (наборами товаров) 27
17 июня 2025, 15:16
Удалил компонент Ace и вот уже 2 недели чисто на сервере, возможно где-то в нем уязвимость
Вирусы майнеры 34
Ну ясно надо править под 3ку. Надо править билдер, надо причесать код и тд и тп. Кто его сейчас поддерживает хз, у Николая он в архиве и вряд ли ему это интересно. Ну как то так…
пока идет запрос удаления новый пользователь не получит новый идентификатор сессии, уже действующий пользователь тоже словит задержку и будет нервно курить и в итоге закроет сайт.
Так вот чтобы не было тормозов я и решил ввести limit, нам же не принципиально очистить таблицу за один проход.
да, это ускорит удаление, но не сильно, в случае с большим кол-ом данных думаю будут те же тормоза что я описал выше.
— на modhost.pro/ на тарифе разработка, сгенерировал 500 000 записей уникальных сессий с 70% ботов.
— выделенный сгенерировал 2 000 000 записей уникальных сессий с 70% ботов.
Далее по тексту режим:
standart — стандартный запрос на удаление что используется в modSessionHandler
ext — запрос на удаление что используется в ExtSessionHandler
Сразу стало заметно тормоза:
Session cleanup time for mode «standart»: 0.0150 s
Session cleanup time for mode «ext»: 3.3543 s
Был один запрос с несколькими условиями github.com/vgrish/ExtSession/blob/490dfc4a7a8f1d1dd18a988573f5b607fadc457c/core/components/extsession/src/ExtSessionHandler.php#L180-L204
Разбил на несколько, стало чуть получше но все равно не то.
Добавил общий индекс на 3 колонки github.com/vgrish/ExtSession/blob/8223ff63e5574b8697fcf0eb66e55c93eaba7fd6/core/components/extsession/schema/extsession.mysql.schema.xml#L36-L40
Session cleanup time for mode «ext»: 1.3543 s — Тоже не фонтан.
Перекинул колонки github.com/vgrish/ExtSession/blob/8223ff63e5574b8697fcf0eb66e55c93eaba7fd6/core/components/extsession/schema/extsession.mysql.schema.xml#L8-L10 перед колонкой data
Стало еще получше.
Ну и подумал нам же не надо прям сразу за раз удалять все записи, пускай удаляет в несколько проходов и добавил к удалению LIMIT.
И вот тут уже стало совсем хорошо
Session cleanup time for mode «ext»: 0.0029 s
Так что с помощью тестов удалось найти слабое место и исправить ситуацию. LIMIT Подбирается опытным путем в зависимости от посещаемости сайта и мощности сервера. По умолчанию использовал 5000.
В каком месте тормозило?
запусти код и после посмотри в журнале ошибок modx если вывод кол-ва ресурсов?
Если нет — то целиком весь используемый код выкладывай.
А настройка
payment_return_id это не оно?
Вероятно тогда можно попробовать чтоб заработало.
можно только указать настройки кроппера по дефолту в виде json