
Илья
31.08.2016
12:15:52
Time To First Byte

ainu
31.08.2016
12:15:54
который получает перед отправкой отдачу апача или php-fpm
а если генерация страницы занимает 2 секунды, то даже через http/2 первый байт отдастся через 2 секунды
но конечно остальные будут много быстрее, и коннект будет быстрее (т.к. соединение держится)

Google

Бернгардт
31.08.2016
12:17:04

ainu
31.08.2016
12:17:25

Бернгардт
31.08.2016
12:17:26
push же, сейчас собирается всеравно больше 2сек, даже если первоначальная отдача быстрее

ainu
31.08.2016
12:17:41
хром прошлая версия прозрачно перестал поддерживать http/2 из-за бага
никто конечно не пострадал но осадочек остался
поэтому пока склеивать полезно


Бернгардт
31.08.2016
12:19:49
естественно, с любой новой технологией как с новыми модулями битрикса
сначала слушаем менеджмент
потом забиваем на год
через год снова слушаем менеджмент, пускаем пионеров
еще через пару лет можно применять
смысл то в другом, интересно время сборки всего
сейчас если уходить меньше чем 0,7сек на выдачу - гарантировано упрешься в то что статика догружается долго
оптимизировать дальше смысла не имеет, только сугубо http/1.1 оптимизация - склейка спрайтов, склейка css, js, догрузка фоном фоточег
уменьшение отдачи страницы в лоб ничего не привносит, основная же проблема визуально - латенси по большому счету
чтобы сейчас не делали, чтобы не придумывали, через 3 года мы, имхо, от этого откажемся, т.к. первоначальная проблема в другом, а это все костыли
и думать будем по другому, то что страница генерируется более 0,7 сек, как сейчас ничего не дает, так давать и не будет
рассматривать можно исключительно как буффер, для докрутки бизнес логики, забивая на оптимизацию выполнения
но это сугубо имхо, исключительно личное мнение


Илья
31.08.2016
12:25:27
http://www.shopolog.ru/metodichka/analytics/ttfb-i-tti-novye-metriki/
юзеру вообще этот первый байт до фонаря

Folt
31.08.2016
12:26:34
ну
я бы не сказал

Google

Илья
31.08.2016
12:26:47
ему важнее когда он увидит картинку и тыкнуть в нее сможет

Folt
31.08.2016
12:28:32
на самом деле тот же ulmart в соотношении того что выдает на той же главной работает быстро

Бернгардт
31.08.2016
12:28:36
ему важнее когда он увидит картинку и тыкнуть в нее сможет
или ему важнее всетаки задачу решить?
если мы говорим о магазинах - то понижение конечной стоимости товара на 10 рублей будет иметь скорее всего больший эффект, чем уменьшение на 0,3сек до первого байта :)
алиекспресс местами ппц как тормозит, однако ...

Илья
31.08.2016
12:29:18

Бернгардт
31.08.2016
12:30:59

Илья
31.08.2016
12:31:24

Бернгардт
31.08.2016
12:32:08
разумные пределы до секунды )
0,5-0,7, чтобы потом не париться по крайней мере пока 1,2 не получается
потом снова соптимизировать на скорость)
остальное пузомерки для ЧСВ и вообще тлен)

Илья
31.08.2016
12:33:02
я же не просто так в начале спросил о какой скорости речь

ainu
31.08.2016
12:33:34

Илья
31.08.2016
12:33:42
мне ответили что до последнего байта я понял как полная отдача страницы

Бернгардт
31.08.2016
12:33:59
а, понял, отстал

Илья
31.08.2016
12:34:02
тот же м видео отдает страницу за 7 сек
а первый байт за 77мс
один хрен юзер сидит и ждет пока картинки появятся
а вот юлмарт отдает за 3

Бернгардт
31.08.2016
12:35:32
эм, это кеш.. фтопку меряться скоростью кеша.. если штатного прогрева (не пользователем) нету
я рассуждал о первом байте без доп.кешей в виде композита, nginx кеширования, варниша..
о разном говорим, ага

Илья
31.08.2016
12:36:16
ну а первый байт уложить в 0,6-0,7 в битриксе насколько знаю не проблема
если не делать, как тут ранее куски кода показывали, циклы на главной

Google

ainu
31.08.2016
12:38:00
Хотя выполнимо

Бернгардт
31.08.2016
12:38:13
ну звиняйте, первый байт уложиться не проблема
последний - нереал, по крайней мере в http/1.1 на любом сайте у которого графики больше баша

ainu
31.08.2016
12:38:17
Теже фасетные индексы изкоробочные
Первый байт - это отзывчивость сайта, если позволите, юзабилити. Нажал - открылось.

Бернгардт
31.08.2016
12:39:09

ainu
31.08.2016
12:39:15
Последний байт же лечится например через сыы
css
Critical CSS
Я про галочку "использовать фасетный индекс".
Портят?

Бернгардт
31.08.2016
12:40:31
при скольнибудь активном обновлении данных - постоянно просят перехешировать жеж

ainu
31.08.2016
12:40:46
аа=)

Бернгардт
31.08.2016
12:40:51
на нестандартных проектах хз как применять
а так все нормально.. для 80% небольших решений

ainu
31.08.2016
12:40:59
ну да.
вечная проблема индексов

Бернгардт
31.08.2016
12:41:36
а вот сейчас проект.. который подразумевает локальную активность товара.. в конкретном городе
и в какую дырку мне эту фильтрацию засунуть? хм..
даже чисто теоретически

ainu
31.08.2016
12:44:40
чисто теоретически.
(я просто рассуждаю)

Google

ainu
31.08.2016
12:45:03
при изменении товаров факт изменения помещяется в очередь (rabbitMQ)
далее ктото другой (не в сессии посетителя) перестраивает индексы.
хотя хз, тут галочкой не обойтись
ставить 16 ядерный xeon уровня выше broadwell и SSD =)

Бернгардт
31.08.2016
12:47:02
видимо не верно выразился..
есть хранилище в отдельной таблицы - активность в городе
есть хранилище в отдельной таблице - цена товара в городе
надо - из этого безобразия собрать фильтр
заказчик видел смарт.фильтр и конечно же хочет такой и недоумевает почему оно не будет работать, хотя битрикс так много говорил о фасетах

ainu
31.08.2016
12:47:42
ааа

Бернгардт
31.08.2016
12:47:58
даже фтопку то что оно в отдельных таблицах
вопрос не в этом.. вопрос в том что хрен ты это простроишь и положишь на это не то что цену, а даже факт активности

Илья
31.08.2016
12:48:16

Admin
ERROR: S client not available

ainu
31.08.2016
12:49:04
чисто теоретически
Объединяем таблицы, до уровня плоская + некоторых значений может быть два.
Даже товары дублируем, если 10 городов - 10 дублей.
Всё это ложим в elasticsearch или sphinx.
На странице делаем фильтр фасетный. Смарт дальше некуда. ПОлучаем из этого список ID товаров/активностей. Выводим через API битрикса.
"включено" "не включено"?

Бернгардт
31.08.2016
12:54:41

ainu
31.08.2016
12:54:55
о как
клевая задача

Бернгардт
31.08.2016
12:55:04
не, дубликаты делать не вариант, и не надо, локальная активность интересна для списков
деталку всеравно надо показывать

ainu
31.08.2016
12:55:11
она динамическая?

Бернгардт
31.08.2016
12:55:20
ну это типично же для магазов региональных вообщем
пробовал на уютерре делать динамику, тормозно это это
проще чек пересчитывать по событиям

Google

ainu
31.08.2016
12:56:47
от пользователя к пользователю может меняться? Например оптовая цена etc

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

ainu
31.08.2016
12:57:32
допустим 10 мегазинов с ID от 1 до 10

Бернгардт
31.08.2016
12:57:40
не, пока речь просто о цене и остатках конкретного города
в зависимости от данных того что есть в магазах и на складах

ainu
31.08.2016
12:57:54
делаем столбцы activity_1 activity_2 activity_3
которые по событиям меняются
и зависимости от города нужный фильтр ставить

Бернгардт
31.08.2016
12:58:50
фтопку остатки и цены магазов кроме как для показа
фильтрация должна быть всегда по тому что в городе

Илья
31.08.2016
12:59:20

ainu
31.08.2016
12:59:26
значит обычный фильтр, и там скрыто передаётся activity_2 = true (для города 2)
либо Hidden либо в коде

Бернгардт
31.08.2016
13:00:00
делаем столбцы activity_1 activity_2 activity_3
ха, блин.. это то понятно..
вариативность на слайдер цены под фильтр
из набора свойств вариативность выбора
все это из того что попадает под фильтр - товар активен в городе
решаемо впринципе, не решаемо решениями битрикс
я лишь об этом )

Vladimir
31.08.2016
14:15:19
ну битрикс изначально проектировался под среднестатистический ИМ... а не под милионники с разными регеонами
ещё не дорос, но довольно близко)

Бернгардт
31.08.2016
14:24:34
да вот тут офисом обсуждаем как раз.. может и дорос..
просто надо опять применить зубочистку не как инструмент для чистки зубов, а впринципе можно и в ухе поковыряться вообщем то.. просто делать это надо немножко осторожно... хы
а несколько регионов думаю будет.. достаточно скоро будет.. года 2-3 опять же..
так, ребятки.. хелп ми..
вот и пришел момент задавать глупый вопрос мне )
кто нибудь производил сравнение реальное - если действительно разница в производительности работы смарт.фильтра с фасетой и без
дает ли фасета действительно какой то значительный прирост?

Vladimir
31.08.2016
16:23:52
на 2 свойствах нет, но если фильтр с 10-15 параметрами ( причём не только список) прирост очень даже заметен
но я на глаз смотрел, без тестов особых