Pathologic
но поддерживать голые запросы неудобно, даже на примере MODxAPI/DocLister это хорошо видно
Anonymous
А если ещё и вфигачить такую вещь, когда данные идут независимо от запроса, то выборки ускоряются в несколько раз. Правда это можно компенсировать вьюхами.
Pathologic
это как?
Anonymous
По моему это то что ты писал "prepared statements"
Pathologic
а, типа один раз подготовили, а потом для разных данных используем?
Anonymous
Ага
Pathologic
и прямо в несколько раз ускорение?
Anonymous
Тогда mysql делает кэш для подобной выборки.
Anonymous
Просто кэш mysql меньше забивается. И соответственно для всех подобных запросов будет один кэш. И не будет очистки
Anonymous
Т.е. когда мы отправляем запрос сразу с данными, то каждый запрос кэшируется отдельно, а таким образом он кэширует без данных
Alexey
век живи - век учись
Pathologic
я наверное никогда не делал таких запросов, чтобы это было заметно (:
Anonymous
А вообще реально ускоряют вьюхи. Мы для текдока их понаделали. Там из 10 секундых запросов они по превращались в 0.1 секундные
Anonymous
Или техдока, ну вообщем база запчастей
Pathologic
вьюхи и триггеры это плохо
Anonymous
Чем вьюхи плохи?
Anonymous
Это же просто закешированный ответ на определённый запрос
Pathologic
я читал, что плохо, мол должен быть порядок, данные в одном месте, вывод в другом и т.д.
Сергей
mysql во мнгогих случаях кэширует однотипные ответы
Pathologic
а так получается как с аяксом через плагин
Anonymous
По сути вьюха создаёт что-то типа виртуальной таблицы где все данные проиндексированны относительно ожидаемого ключа. И уже SELECT расставлен в нужном порядке. И по этому просто выбираем по одному ключу и всё
Камиль
Короче для DLSitemap ничего лучше не придумал. $domen = parse_url($data['e.url']); $new = ''; foreach ($domen as $key => &$val) { switch ($key) { case 'scheme': $new .= $val . '://'; break; case 'host': $new .= $_SERVER['SERVER_NAME']; break; default: $new .= $val; } } $data['e.url'] = $new;если кто подскажет как лучше домен подменять, то буду благодарен
Pathologic
лучше не домен подменять а сеошника-дебила
Камиль
стопудова, спасибо за совет
Камиль
лучше не домен подменять а сеошника-дебила
если напишите более аргументированный ответ, то буду благодарен 😅
Pathologic
достаточно того, что я написал DLSitemap, а вот сеошники кроме хуйни ничего написать не способны 🤠
Камиль
тяжко всем угодить:)
Камиль
но вообще было бы круто, если бы одним параметром можно было домен изменить в DLSitemap😅
Pathologic
через мой труп только ((:
Камиль
это того не стоит
Aliaksandr
Для каждого ресурса парсить урл как то напряжно, не?)
Камиль
Для каждого ресурса парсить урл как то напряжно, не?)
спорить не буду, по этому и выложил, мб кто лучше решение знает
Камиль
не знаю как работают другие решения по мультгородности, но я сделал своё :) единственный момент остался это sitemap
Aliaksandr
Огородогородильными методами это все делается)
Камиль
о.О
Aliaksandr
Гдавное не забыть разные ключи кэша для разных доменов:)
Камиль
это сео термин какой т?
Камиль
не у меня всё более колхозно))) :D
Aliaksandr
Не, этот термин больше к модх относится
Aliaksandr
Так а как будет разный сайтмап показываться, если он закэшируется
Aliaksandr
Или там некэшированный вызов
Dmytro
а в чем проблема то собственно ?
Dmytro
правим шаблон сайтмап и вставляем туда свой домен ))
Dmytro
и все
Камиль
правим шаблон сайтмап и вставляем туда свой домен ))
"tpl": "@CODE:\n<url>\n\t<loc>[+e.url+]</loc>\n\t<lastmod>[+date+]</lastmod>\n\t<changefreq>[+update+]</changefreq>\n\t<priority>[+priority+]</priority>\n</url>",
Aliaksandr
В кэше как минимум, который от домена не зависит)
Камиль
нужно сформировать новый [+e.url+]
Dmytro
ну так подмените делов то ) хоть препаре хоть снипет внутри
Aliaksandr
Теоретически можно не использовать схему фулл, а просто приставлять спереди домен:)
Asan
Как в modx реализовать сортировку товаров?
Камиль
хм, а если плагином подменить [(site_url)] то тоже прокатит?
Aliaksandr
Уже предлагал както учитывать для кэша server name, но все забили)
Pathologic
а я чего-то думал, что там http и https подставлять нужно
Aliaksandr
Но потом попадет в кэш:)
Pathologic
поддомены можно str_replace
Камиль
Без кэширования вполне
ну если можно именно [(site_url)] сделать некешированным
Aliaksandr
Главное знать какой из них закэшировался
Pathologic
site_url можно подменять плагином
Aliaksandr
ну если можно именно [(site_url)] сделать некешированным
Так а твой список через препаре разве не кэшируется?
Pathologic
можно воспользоваться кэшером от твига и там кэшировать под каждый поддмоен
Камиль
Так а твой список через препаре разве не кэшируется?
сейчас нет. фишка в том чтобы выполнить парсинг домена один раз и всё
Камиль
можно воспользоваться кэшером от твига и там кэшировать под каждый поддмоен
для этого весь уже давно готовый проект нужно перетягивать на твиг
Pathologic
зачем
Pathologic
просто библиотеки подключить
Aliaksandr
Так вызывай его на некэшированное странице, тогда и site_url не закэшируется
Aliaksandr
Какая разница, если там вызов одного сниппета
Aliaksandr
И он не кэшируется
Камиль
а есть какой нить $modx->setConfig('site_start','balbalbal') для сессии?))))
Anonymous
$_SESSION['key']=value; Дарю 😊
Камиль
$_SESSION['key']=value; Дарю 😊
"вау ну ничего себе"
Камиль
Для каждого ресурса парсить урл как то напряжно, не?)
без парсинга урла 0,027544021606445 с парсингом 0,028562068939209
Камиль
Anonymous
Там у тебя 10 страниц?
Сергей
тут попахивает на 300 страниц))
Камиль
да не больно много))
Anonymous