
Sergey
18.04.2017
18:32:41
какое событие мучать ?

Vite4eg
18.04.2017
18:36:12
Нету по bx js нормальной инфы вроде

Бернгардт
18.04.2017
18:36:50
оно просто работает, поверь
я как раз такими вещами и занимаюсь в разрезе нагрузки
инструмент действительно хорош

Google

Vite4eg
18.04.2017
18:37:59

Бернгардт
18.04.2017
18:38:08
у Светланы Русовой был по BX.JS вроде
по крайней мере вебинар точно был
возможно и запись

Vite4eg
18.04.2017
18:38:27
Разве что на портале можно использовать готовые классы

Neiron
18.04.2017
18:42:11

Nikolay
18.04.2017
18:43:08
Спасибо, буду искать и спрашивать=))

Бернгардт
18.04.2017
18:43:43
да фактически описывать нечего
собирается карта свойств и цен, плюс активности
по одному инфоблоку
далее все что не является интом - пакуется в отдельную таблицу справочник

Евгений
18.04.2017
18:44:23
Коллеги
а зачем битрикс просит opcache.revalidate_freq = 0 ?

Бернгардт
18.04.2017
18:44:34
в итоге получаем схему с интами
вычисляется фасетид
активность 1
цены и свойства - смещение на бит (ну или умножить на 2, как больше нравится), и чтото из них +1 чтоб не было конфликта

Google

Бернгардт
18.04.2017
18:46:16
ну и вся эта карта приземляется
дополнительно только делается денормализация по секции
по одной записи для каждого входящего sectionId плюс для глобального - чтоб если искать придется в текущей и подсекциях - рекурсией не пахло
для каждого инфоблока делается две таблицы
b_block_1_index - фасет
b_iblock_1_index_val - справочник фасета
где 1 - это ид инфоблока
ну вот по первой, по фасету и идет поиск, все как бы просто
достаточно подробно?
ключей на _index достаточно
поиск всегда идет по ключу
так что пока рамы хватает - оно просто летает
логика компоненты смарт.фильтра тоже достаточно простая
фасет простроен - используем фасет
фасет не простроен - идем по старой логике, по обычным таблицам
Neiron , достаточно подробно?
а то я то разобрался, для меня просто.. мог чтото упустить

Евгений
18.04.2017
18:53:17
Коллеги, если клиент предлагает 50% пени за просроченную задачу, это норм?

Neiron
18.04.2017
18:53:20

Бернгардт
18.04.2017
18:53:58
У нас было свое хранилище для свойств и цен. Фасет заполняли руками, если я правильно понял вопрос
Свойств было до 3к на товар, цены региональные по магазинам. Хранить в битриксе не было вариантом
Он бы не справился, да и не к чему это было

Neiron
18.04.2017
18:56:38
А в самих инфоблоках товары были?

Бернгардт
18.04.2017
18:56:46
ага
просто тут плюсом сразу тучу профита от битрикса - штатный магазин, каталог, скидки (да, кастомные цены можно на скидки битры повесить), корзина с оформлением, платежки
зачем всего этого лишаться
свойства можно было в один json запаковать - нужны были с подгруппами - но почти все для деталки или фильтра
а вот цены с остатками исключительно свои хранилища
цены по магазинно из них цена региона обсчитывалась и выводилась
остатки помагазинно и регионально +склады

Google

Бернгардт
18.04.2017
18:58:51
тут битра не помощник в том объеме который нужен был нашему клиенту
а вот фасет справился.. сам очень удивился и при случае сказал спасибо больше Максу

Neiron
18.04.2017
19:01:53
м, т.е. как я понял
Часть свойств лежит в json
а те по которым фильтрация в справочниках?

Бернгардт
18.04.2017
19:02:54
неа, неправильно понял
все свойства лежат в json
те что надо для анонса, корзины или еще где кроме деталки и фильтра - дублируются в свойства битры штатно, чтоб можно было управлять
свои скрипты для показа деталки
и свои скрипты для заполнения/обновления фасета
для построения смарт.фильтра иметь свойства в битре не нужно
только значения справочника подсолить иногда
для фильтрации и построения смарта нафик не нужны

Neiron
18.04.2017
19:05:16


Бернгардт
18.04.2017
19:05:34
ну что за справочники прицепился.. зачем справочники?
какие справочники?
один только справочник - бренды
но он не в json
цвет зеленый
тут дублирование в фасете будет и так и так, и оно оправдано
его в свойствах нет
мифический цвет конечно
но это очень специфичный по объему проект
не факт что тебе оно надо
с json это тоже было на одном из проектов, не на этом конкретно
для упрощения, так сказать
конкретно на этом проекте свойства из сапа достались, если знаешь и сталкивался
там данные весьма специфичны, и структура в mysql повторяла их вариант, т.к. синхронизировать надо было
специфичность в том что для каждого раздела своя схема
и группа и название свойства идентичного в разных разделах может иметь разный id бгг
а у нас оно собиралось, да..
по названию, да
точнее по псевдоид из хэша названия
но это уже детали и незначительные нюансы мелко-прикладные


Neiron
18.04.2017
19:11:04
Да я все пытаюсь понять сколько было свойств в инфоблоке, сколько из них множественные?
Насколько сильно тормозила сама админка? При 500к, 1ккк, 2ккк?

Бернгардт
18.04.2017
19:11:53
зачем тебе это понимание?

Google

Бернгардт
18.04.2017
19:12:21
столько свойств я не заводил даже штатно
если хочешь узнать - возьми апи, фейкер и наполни
не, когда то наполнял, но это было давно и неправда
и это.. фасет и админка - это про разное, если что
фасет только для смарт.фильтра

Neiron
18.04.2017
19:15:11
Видел один проект, где было 1,7 ляма элементов,
страница в админке открывалась по 6 минут
500к ты говоришь.. Ну это еще будет шевелиться, но не те масштабы

Бернгардт
18.04.2017
19:15:14
ну и если фильтры задашь..
пфф..
а я видел когда и 100к тормозило
и что это доказывает? а вот нифига это не доказывает
40к даже видел как тормозило
10к с тучей тп видел как тормозило..
блин.. да мало ли что я видел)
я видел как просто вызов ядра без ничего тормозил ыы
потому что ктото умный чего то в инит запихнул
вообще таблица в mysql после 500к это уже про достаточно грамотного админа, который знает что делает, и про достаточно кол-во рамы.. ну если чо..

Neiron
18.04.2017
19:24:10

Бернгардт
18.04.2017
19:25:05
эластик ты будешь использовать для поиска, а не для хранения данных под вывод, не путай
не стоит сравнивать эластик и админку
ты и нативку запилишь - данные будут из бд браться, а не из эластика
а бд при сравнимом фукнционале можно угрохать.. я лишь про это
даже если схему сам нарисуешь..
самой нативной админке откровенно плевать сколько там у тебя элементов
везде лимиты и кеширование кстати тоже

Neiron
18.04.2017
19:29:24
6 минутные лимиты, на то чтобы вывести в админке список элементов без всякой фильтрации?)

Бернгардт
18.04.2017
19:30:59
я не знаю как ты этого добивался

Neiron
18.04.2017
19:31:31
1.7 лямов товаров добавили

Google

Бернгардт
18.04.2017
19:31:49
вот прям штатный битрикс, без модификаций? просто заполняем без ничего 1.7 ляма товаров и получаем 6 минут на хоп? правда?
или дело не в том что там 1.7 ляма товаров?
сколько попугаев битрикс выдавал, какие показатели на чтение из бд? что за железо?
не.. мне стало интересно.. я затестаю
я знаю что битрикс местами тормоз, но в такой кейс тупо не верю

Neiron
18.04.2017
19:33:52
6 ядер, 16 гигов вроде было, я уже не мониторю этот проект, так.. взял на заметку

Бернгардт
18.04.2017
19:34:43
надо будет заполнить с нуля..
мне кажется дерьмово настроили просто
либо там гдето чудесная кастомизация была, либо всетаки дело было в каком то наборе свойств или еще чтото

Neiron
18.04.2017
19:35:25
свойств у товаров ~150

Бернгардт
18.04.2017
19:36:12
вот в этом может быть, особенно если все множественные
но они будут себя в таком кол-во плохо чувствовать на любом кол-ве товаров
также как большой объем цен, остатков - вот тут могли кстати скорее пропариться, а не на свойствах
просто зафигачили цен соточку и все.. приехали

Neiron
18.04.2017
19:36:56
1 цена на 1 товар
Предложений нет
Множественных свойств по-моему вообще не было

Бернгардт
18.04.2017
19:37:47
Типов цен всмысле
Сколько из них используется неважно

Neiron
18.04.2017
19:38:21
Тип цены 1 - BASE

Бернгардт
18.04.2017
19:38:41
В субботу ткни меня, протестируем, мне интересно стало
Хост и руки с меня. С тебя идеи и глаза
В 13мск нормально

Neiron
18.04.2017
19:40:04
А про эластик, я сделал прозрачное проксирование запроса на него, затем в основной запрос передается список id

Бернгардт
18.04.2017
19:40:07
Вспомни до этого времени кейс по максимуму

Neiron
18.04.2017
19:40:34
Ок)

Бернгардт
18.04.2017
19:42:26
надо будет только схему наполннения наверное заранее
чтото думаю такой объем вгружать будет долго