Forwarded from AFF.TOP
This media is not supported in your browser
VIEW IN TELEGRAM
Open AI анонсировала новую модель ChatGPT - Astra
OpenAI показала правительству США новую модель Astra — следующую крупную нейросеть после Sol. Её фокус — долгосрочные задачи и управление саб-агентами, которые делят работу на мелкие шаги. Пока неясно, станет ли Astra GPT-6 или новой версией в линейке Sol, но релиз уже близко, и её стоит ждать на тестах.
➡️ Читайте на сайте: https://aff.top/blog/open-ai-anonsirovala-novuiu-model-chatgpt-astra
🧠 Ещё больше инсайтов → в канале AFF.top
OpenAI показала правительству США новую модель Astra — следующую крупную нейросеть после Sol. Её фокус — долгосрочные задачи и управление саб-агентами, которые делят работу на мелкие шаги. Пока неясно, станет ли Astra GPT-6 или новой версией в линейке Sol, но релиз уже близко, и её стоит ждать на тестах.
➡️ Читайте на сайте: https://aff.top/blog/open-ai-anonsirovala-novuiu-model-chatgpt-astra
🧠 Ещё больше инсайтов → в канале AFF.top
Forwarded from AffPapa! Клуб спящих бизнесменов! Потрачено!
Там у Макса Довольного вышел очередной выпуск "Таких новостей", новости как новости, но вот эта новость меня прям разъебала!
Я капнул дальше, и там вообще пиздец, Лев из Пепер.Партнёрс пишет мол - вы согласовали выплату, взяли на оплату, потом хуй пойми что изменилось и вы обвиняете нас во фроде, ну и мол - ребят, давайте как то решим!
На что приходит Настя Щербина #MelBet и просто говорит "Со мной лучше не сорится" - не знаю, воспринял ли это Лев как угрозу, но это совершено точно угроза и была и не понятно чего теперь Льву боятся, чисто Насти? Или Всего #MelBet? Или чего-то большего?
Смех смехом, но речь там идёт про 2к баксов, деньги не большие, но знаете что ещё смешней? Настя потом ещё раз пришла и сказала мол "Уволила ту менеджершу которая работа со Львом" и это вдвойне разъеб, во первых за что? А во вторых не чего что она беременная? Лол на хуй какой-то
Ладно, шучу, не знаю была ли та менеджерша берменная, вполне могла быть кстати, но смех тут в том что ни кто на хуй уволен не был, девушка как работала так и работает, её акк, её фотка, она же за телеграмом, она же прям, а не новый менеджер
Сколько раз можно соврать отвечая на простое сообщение в чате?
Макс в своих новостях примерно это и рассказал, но на своём, корректном официальном языке!
Если что новости Макс хуярит каждую неделю у себя на канале https://www.youtube.com/@traffink
P.S. Если что, я не сорюсь, просто удивительно! Но в целом мне все понятно, продолжим дальше глотать такое, ну, естесвенно пока это нас прям не коснётся... А потом... А потом всем будет уже похуй ибо это станет нормой, просто согласовывать, брать кошель на выплату, а потом говорить - хуй а не выплата, а на вопрос - что случилось? Все же было согласовано, получать ответ "Не лучшее решение ссорится со мной"
P.S.2. не могу удержатся - а когда вообще сорра было лучшим решением? Реально? Было такое? К чему тогда эти слова про не лучшее решение если это априори худшее, я уже даже не говорю что ни кто ёпрст и не сорился вообще то, а просто спросили - ну чо там с деньгами? #НастяЩербина #MelbetОтзыв #MelbetВыплаты
____
🤔 Консоли Google Play и Apple Developer надо? Phoenix — 100% свой фарм с 2021-го. Забрать акки → @phoenix_seller_bot 🤔
Я капнул дальше, и там вообще пиздец, Лев из Пепер.Партнёрс пишет мол - вы согласовали выплату, взяли на оплату, потом хуй пойми что изменилось и вы обвиняете нас во фроде, ну и мол - ребят, давайте как то решим!
На что приходит Настя Щербина #MelBet и просто говорит "Со мной лучше не сорится" - не знаю, воспринял ли это Лев как угрозу, но это совершено точно угроза и была и не понятно чего теперь Льву боятся, чисто Насти? Или Всего #MelBet? Или чего-то большего?
Смех смехом, но речь там идёт про 2к баксов, деньги не большие, но знаете что ещё смешней? Настя потом ещё раз пришла и сказала мол "Уволила ту менеджершу которая работа со Львом" и это вдвойне разъеб, во первых за что? А во вторых не чего что она беременная? Лол на хуй какой-то
Ладно, шучу, не знаю была ли та менеджерша берменная, вполне могла быть кстати, но смех тут в том что ни кто на хуй уволен не был, девушка как работала так и работает, её акк, её фотка, она же за телеграмом, она же прям, а не новый менеджер
Сколько раз можно соврать отвечая на простое сообщение в чате?
Макс в своих новостях примерно это и рассказал, но на своём, корректном официальном языке!
Если что новости Макс хуярит каждую неделю у себя на канале https://www.youtube.com/@traffink
P.S. Если что, я не сорюсь, просто удивительно! Но в целом мне все понятно, продолжим дальше глотать такое, ну, естесвенно пока это нас прям не коснётся... А потом... А потом всем будет уже похуй ибо это станет нормой, просто согласовывать, брать кошель на выплату, а потом говорить - хуй а не выплата, а на вопрос - что случилось? Все же было согласовано, получать ответ "Не лучшее решение ссорится со мной"
P.S.2. не могу удержатся - а когда вообще сорра было лучшим решением? Реально? Было такое? К чему тогда эти слова про не лучшее решение если это априори худшее, я уже даже не говорю что ни кто ёпрст и не сорился вообще то, а просто спросили - ну чо там с деньгами? #НастяЩербина #MelbetОтзыв #MelbetВыплаты
____
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from AFF.TOP
This media is not supported in your browser
VIEW IN TELEGRAM
SeeDance 2.5 вышла в публичный доступ
ByteDance выпустила SeeDance 2.5 — нейронку для генерации 30-секундных видео в 4K с до 50 референсами, включая локации и персонажей. Для CPA и iGaming-креативов это уже уровень почти кино, но технология пока дорогая и не слишком практичная: тестировать можно через Jimeng AI и Doubao Pro, а API обещают позже.
➡️ Читайте на сайте: https://aff.top/blog/seedance-2-5-vyshla-v-publichnyi-dostup
🧠 Ещё больше инсайтов → в канале AFF.top
ByteDance выпустила SeeDance 2.5 — нейронку для генерации 30-секундных видео в 4K с до 50 референсами, включая локации и персонажей. Для CPA и iGaming-креативов это уже уровень почти кино, но технология пока дорогая и не слишком практичная: тестировать можно через Jimeng AI и Doubao Pro, а API обещают позже.
➡️ Читайте на сайте: https://aff.top/blog/seedance-2-5-vyshla-v-publichnyi-dostup
🧠 Ещё больше инсайтов → в канале AFF.top
Forwarded from Довольный арбитражник трафика
Свежий выпуск новостей 🗞
Австралия судится с Telegram, конфликт Pepper Partners и Melbet Partners, Google научил AI управлять браузеров Chrome, квартальный отчет Meta — и другие новости последней недели.
📹 Смотреть на YouTube
Австралия судится с Telegram, конфликт Pepper Partners и Melbet Partners, Google научил AI управлять браузеров Chrome, квартальный отчет Meta — и другие новости последней недели.
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from AFF.TOP
This media is not supported in your browser
VIEW IN TELEGRAM
Госдума собирается запретить скрытую рекламу казино
Госдума уточнила законопроект против скрытой рекламы нелегального гемблинга: под запрет попадут любые реферальные ссылки, ролики и стримы с показом игры в казино. Площадки обяжут сами искать и блокировать такой контент и аккаунты. Для УБТ, дорвеев и SEO это значит ещё более жёсткую зачистку трафика и риски для любых промо-материалов с рефералкой.
➡️ Читайте на сайте: https://aff.top/blog/gosduma-sobiraetsia-zapretit-skrytuiu-reklamu-kazino
🧠 Ещё больше инсайтов → в канале AFF.top
Госдума уточнила законопроект против скрытой рекламы нелегального гемблинга: под запрет попадут любые реферальные ссылки, ролики и стримы с показом игры в казино. Площадки обяжут сами искать и блокировать такой контент и аккаунты. Для УБТ, дорвеев и SEO это значит ещё более жёсткую зачистку трафика и риски для любых промо-материалов с рефералкой.
➡️ Читайте на сайте: https://aff.top/blog/gosduma-sobiraetsia-zapretit-skrytuiu-reklamu-kazino
🧠 Ещё больше инсайтов → в канале AFF.top
Мониторинг без узких мест — это миф. Ищем bottleneck по слоям, а не по ощущениям
Коллеги, давайте разберем план выполнения. Если приложение «тормозит», не начинайте с индексов и не лечите всё подряд. Сначала фиксируем, где именно упираемся: CPU, память, диск, сеть или блокировки. Иначе легко оптимизировать не то — и получить красивый, но бесполезный план.
Рабочая схема простая:
— сравниваем latency запросов и время ожидания I/O;
— смотрим очередь диска и процент кэша, а не только загрузку CPU;
— проверяем lock wait и deadlock’и отдельно от медленных запросов;
— сопоставляем рост трафика с ростом времени ответа, а не с «кажется, база виновата».
Если CPU высокий, это не всегда «мало ядер». Часто причина в плохом плане, сканах вместо seek, неудачной сортировке или горячем ключе. Если диск забит, ищите не только тяжелые SELECT, но и мусорные UPDATE/DELETE, массовые чекпойнты, бэкапы и autovacuum-подобные фоновые процессы. Посмотрим, что тут с I/O в реальности.
Золотое правило: сначала мониторинг, потом индексы. Без метрик по waits, IOPS, latency и lock contention вы просто стреляете в темноте. А когда bottleneck найден, исправляйте один слой за раз и снова замеряйте. Иначе «ускорение» быстро превращается в новый инцидент.
Коллеги, давайте разберем план выполнения. Если приложение «тормозит», не начинайте с индексов и не лечите всё подряд. Сначала фиксируем, где именно упираемся: CPU, память, диск, сеть или блокировки. Иначе легко оптимизировать не то — и получить красивый, но бесполезный план.
Рабочая схема простая:
— сравниваем latency запросов и время ожидания I/O;
— смотрим очередь диска и процент кэша, а не только загрузку CPU;
— проверяем lock wait и deadlock’и отдельно от медленных запросов;
— сопоставляем рост трафика с ростом времени ответа, а не с «кажется, база виновата».
Если CPU высокий, это не всегда «мало ядер». Часто причина в плохом плане, сканах вместо seek, неудачной сортировке или горячем ключе. Если диск забит, ищите не только тяжелые SELECT, но и мусорные UPDATE/DELETE, массовые чекпойнты, бэкапы и autovacuum-подобные фоновые процессы. Посмотрим, что тут с I/O в реальности.
Золотое правило: сначала мониторинг, потом индексы. Без метрик по waits, IOPS, latency и lock contention вы просто стреляете в темноте. А когда bottleneck найден, исправляйте один слой за раз и снова замеряйте. Иначе «ускорение» быстро превращается в новый инцидент.
Сложный SQL не лечится «магией» — сначала разбираем план, потом уже переписываем запрос
Коллеги, давайте разберем план выполнения. У тяжелых запросов почти всегда одни и те же причины: лишний full scan, неверная селективность, неудачный join order, сортировка на диске.
Схема простая, но дьявол кроется в статистике. Сначала смотрим:
• где самый дорогой оператор;
• сколько строк ожидали и сколько получили;
• не тащит ли запрос лишние столбцы и строки до фильтра.
Дальше режем запрос по слоям: убираем подзапросы, которые можно заменить join’ом или CTE только для читаемости; выносим фильтры как можно раньше; проверяем, не ломает ли функция в WHERE использование индекса. Если условие выглядит «удобно», но превращает поиск в скан — это плохое удобство.
Особое внимание — повторяющимся агрегациям, OR по разным полям и неявным преобразованиям типов. Именно они часто делают план нестабильным: на маленьком объеме все летает, на боевом — внезапно начинается I/O-ад. Посмотрим, что тут с I/O в реальности.
Золотое правило: сначала мониторинг, потом индексы. Если после переписывания запрос все еще тяжёлый, только тогда добавляем индекс под конкретный предикат и проверяем, не выросла ли цена записи и блокировок.
Коллеги, давайте разберем план выполнения. У тяжелых запросов почти всегда одни и те же причины: лишний full scan, неверная селективность, неудачный join order, сортировка на диске.
Схема простая, но дьявол кроется в статистике. Сначала смотрим:
• где самый дорогой оператор;
• сколько строк ожидали и сколько получили;
• не тащит ли запрос лишние столбцы и строки до фильтра.
Дальше режем запрос по слоям: убираем подзапросы, которые можно заменить join’ом или CTE только для читаемости; выносим фильтры как можно раньше; проверяем, не ломает ли функция в WHERE использование индекса. Если условие выглядит «удобно», но превращает поиск в скан — это плохое удобство.
Особое внимание — повторяющимся агрегациям, OR по разным полям и неявным преобразованиям типов. Именно они часто делают план нестабильным: на маленьком объеме все летает, на боевом — внезапно начинается I/O-ад. Посмотрим, что тут с I/O в реальности.
Золотое правило: сначала мониторинг, потом индексы. Если после переписывания запрос все еще тяжёлый, только тогда добавляем индекс под конкретный предикат и проверяем, не выросла ли цена записи и блокировок.
Forwarded from AFF.TOP
This media is not supported in your browser
VIEW IN TELEGRAM
Facebook вводит бесплатную верификацию Facebook Verified
Meta тестирует бесплатную верификацию Facebook Verified через видеоселфи: аккаунт получает галочку в профиле и в Marketplace, Dating и Groups. Фича нужна, чтобы снизить число ИИ-акков и усилить антифрод, но реальная польза для арбитража пока неясна — нужно проверять, даст ли она меньше селф-локов и банов.
➡️ Читайте на сайте: https://aff.top/blog/facebook-vvodit-besplatnuiu-verifikaciiu-facebook-verified
🧠 Ещё больше инсайтов → в канале AFF.top
Meta тестирует бесплатную верификацию Facebook Verified через видеоселфи: аккаунт получает галочку в профиле и в Marketplace, Dating и Groups. Фича нужна, чтобы снизить число ИИ-акков и усилить антифрод, но реальная польза для арбитража пока неясна — нужно проверять, даст ли она меньше селф-локов и банов.
➡️ Читайте на сайте: https://aff.top/blog/facebook-vvodit-besplatnuiu-verifikaciiu-facebook-verified
🧠 Ещё больше инсайтов → в канале AFF.top
Forwarded from AffPapa! Клуб спящих бизнесменов! Потрачено!
ROIдину продал — канал без унылого говна, без «экспертов», которые десятый раз пересказывают одно и то же, и без “давайте разберёмся” на 40 абзацев.
У меня формат простой:
если где-то пахнет бабками — я показываю где именно.
если где-то пахнет крысиной вознёй — я называю как есть.
если кто-то делает вид, что “всё под контролем” — я смотрю на цифры и спрашиваю: а точно?
Пишу прямо, иногда грубо, всегда по делу.
Чтобы ты не “вдохновлялся”, а понимал расклад и принимал решения без самообмана.
Короче: если любишь, когда тебе говорят честно, быстро и без церемоний — залетай кабанчиком на канальчик
У меня формат простой:
если где-то пахнет бабками — я показываю где именно.
если где-то пахнет крысиной вознёй — я называю как есть.
если кто-то делает вид, что “всё под контролем” — я смотрю на цифры и спрашиваю: а точно?
Пишу прямо, иногда грубо, всегда по делу.
Чтобы ты не “вдохновлялся”, а понимал расклад и принимал решения без самообмана.
Короче: если любишь, когда тебе говорят честно, быстро и без церемоний — залетай кабанчиком на канальчик
Forwarded from Affiliate Marketing - Cpa.Rip
🇭🇺 64% Reg2Dep с SEO-трафика в Венгрии: спортивный портал показал 78%, крупный обзорник - 50%, а на небольших площадках конверсия местами приближалась к 100%.
🎰 Разобрали, что влияет на такие результаты и какие инструменты и условия доступны партнёрам SpinBetter Partners.
👇 Переходите в пост за подробностями
https://t.me/spinbetter_partners_official/23
👇 Хотите запустить трафик прямо сейчас?
@spinbetter_aff_support
#партнёрский_пост
👇 Переходите в пост за подробностями
https://t.me/spinbetter_partners_official/23
👇 Хотите запустить трафик прямо сейчас?
@spinbetter_aff_support
#партнёрский_пост
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from AFF.TOP
This media is not supported in your browser
VIEW IN TELEGRAM
Youtube массово забанил ASMR-каналы за ссылки на Only Fans
YouTube массово забанил ASMR-каналы за партнёрские ссылки в описании, минуя обычные 3 страйка. Формально причина — сексуальный контент, фактически под ударом оказались ссылки на OnlyFans и Patreon. Для УБТ и CPA это тревожный сигнал: площадка может ужесточить модерацию и против других доноров, включая Boosty.
➡️ Читайте на сайте: https://aff.top/blog/youtube-massovo-zabanil-asmr-kanaly-za-ssylki-na-only-fans
🧠 Ещё больше инсайтов → в канале AFF.top
YouTube массово забанил ASMR-каналы за партнёрские ссылки в описании, минуя обычные 3 страйка. Формально причина — сексуальный контент, фактически под ударом оказались ссылки на OnlyFans и Patreon. Для УБТ и CPA это тревожный сигнал: площадка может ужесточить модерацию и против других доноров, включая Boosty.
➡️ Читайте на сайте: https://aff.top/blog/youtube-massovo-zabanil-asmr-kanaly-za-ssylki-na-only-fans
🧠 Ещё больше инсайтов → в канале AFF.top
Forwarded from AffPapa! Клуб спящих бизнесменов! Потрачено!
This media is not supported in your browser
VIEW IN TELEGRAM
Пока все выжимают последнее из гемблы и нутры — рядом разгоняется вертикаль, где конкуренции почти нет.
GOLOVE.AI Partners — прямой рекл, свой AI Girlfriend продукт, никаких посредников.
💰CPA до $60 за FTP или 60% RevShare без понижения. Ежененедельные выплаты от 100$. Гео - WW, источники любые. Личный менеджер, помощь с запуском, инсайды от баинга — заходишь не в одиночку.
Связки здесь еще живут неделями, а не сгорают за пару дней, как в перегретых офферах. Кто заходит первым, тот и снимает сливки, пока рынок не устоялся.
📢Подписывайся на наш телеграм канал, что быть первым, кто узнаёт о новостях партнерки и акциях для вебов
👉Регистрируйся и забирай доступ к офферу, условия уже ждут
GOLOVE.AI Partners — прямой рекл, свой AI Girlfriend продукт, никаких посредников.
💰CPA до $60 за FTP или 60% RevShare без понижения. Ежененедельные выплаты от 100$. Гео - WW, источники любые. Личный менеджер, помощь с запуском, инсайды от баинга — заходишь не в одиночку.
Связки здесь еще живут неделями, а не сгорают за пару дней, как в перегретых офферах. Кто заходит первым, тот и снимает сливки, пока рынок не устоялся.
📢Подписывайся на наш телеграм канал, что быть первым, кто узнаёт о новостях партнерки и акциях для вебов
👉Регистрируйся и забирай доступ к офферу, условия уже ждут
Forwarded from AFF.TOP
This media is not supported in your browser
VIEW IN TELEGRAM
За что Telegram удаляли из App Store
Telegram временно удалили из App Store из-за массовых жалоб на запрещённый контент, который использовали для шантажа админов. После удаления ролика приложение вернули, но кейс показал уязвимость платформы: массовые доносы и подставы будут расти, а Telegram и владельцам чатов придётся усиливать модерацию и автоудаление медиа.
➡️ Читайте на сайте: https://aff.top/blog/za-chto-telegram-udaliali-iz-app-store
🧠 Ещё больше инсайтов → в канале AFF.top
Telegram временно удалили из App Store из-за массовых жалоб на запрещённый контент, который использовали для шантажа админов. После удаления ролика приложение вернули, но кейс показал уязвимость платформы: массовые доносы и подставы будут расти, а Telegram и владельцам чатов придётся усиливать модерацию и автоудаление медиа.
➡️ Читайте на сайте: https://aff.top/blog/za-chto-telegram-udaliali-iz-app-store
🧠 Ещё больше инсайтов → в канале AFF.top
Оптимизация сложного SQL: 5 мест, где план обычно теряет время и память
Коллеги, давайте разберем план выполнения. Сложный запрос редко «тормозит вообще» — обычно у него есть 1–2 узких места: лишний проход по большим данным, плохая селективность фильтра или неудачный join. Сначала смотрим не на текст, а на фактический план: где растут rows, где идет sort/hash spill, где появляется nested loop на миллионы строк.
— Упростите фильтры до sargable-формы: без функций по колонке, без неявных преобразований типов.
— Проверьте join-порядок и кардинальность: ошибка в оценке строк часто ломает весь план.
— Уберите лишние CTE/подзапросы, если они заставляют оптимизатор материализовать промежуточный результат.
— Отдельно смотрите на DISTINCT, GROUP BY, ORDER BY: часто именно они съедают память и I/O.
— Индекс полезен только если он совпадает с предикатом и не превращает запись в медленный аттракцион.
Схема простая, но дьявол кроется в статистике. Если статистика устарела или данные сильно перекошены, оптимизатор выбирает красивый на бумаге, но дорогой в реальности путь. Посмотрим, что тут с I/O в реальности: если чтение идет массово, а фильтр отбрасывает почти все строки, индекс или переписанный predicate дадут больше, чем «еще один hint».
В продакшене так лучше не делать, и вот почему: сначала лечим запрос, потом уже спорим с индексами и настройками памяти. Золотое правило: сначала мониторинг, потом индексы.
Коллеги, давайте разберем план выполнения. Сложный запрос редко «тормозит вообще» — обычно у него есть 1–2 узких места: лишний проход по большим данным, плохая селективность фильтра или неудачный join. Сначала смотрим не на текст, а на фактический план: где растут rows, где идет sort/hash spill, где появляется nested loop на миллионы строк.
— Упростите фильтры до sargable-формы: без функций по колонке, без неявных преобразований типов.
— Проверьте join-порядок и кардинальность: ошибка в оценке строк часто ломает весь план.
— Уберите лишние CTE/подзапросы, если они заставляют оптимизатор материализовать промежуточный результат.
— Отдельно смотрите на DISTINCT, GROUP BY, ORDER BY: часто именно они съедают память и I/O.
— Индекс полезен только если он совпадает с предикатом и не превращает запись в медленный аттракцион.
Схема простая, но дьявол кроется в статистике. Если статистика устарела или данные сильно перекошены, оптимизатор выбирает красивый на бумаге, но дорогой в реальности путь. Посмотрим, что тут с I/O в реальности: если чтение идет массово, а фильтр отбрасывает почти все строки, индекс или переписанный predicate дадут больше, чем «еще один hint».
В продакшене так лучше не делать, и вот почему: сначала лечим запрос, потом уже спорим с индексами и настройками памяти. Золотое правило: сначала мониторинг, потом индексы.
Транзакции и уровни изоляции: где чаще всего ломают производительность
Коллеги, давайте разберем план выполнения. Транзакция — не просто «обернул в BEGIN и надеюсь». Это еще и блокировки, версия строк, ожидание I/O и риск получить красивый дедлок вместо красивого коммита.
Базовые ошибки почти всегда одни и те же: держат транзакцию открытой дольше, чем нужно; делают внутри нее тяжелый SELECT без фильтра; смешивают чтение и запись в одном блоке, хотя можно разделить. Чем дольше живет транзакция, тем больше шанс, что она начнет мешать соседям.
По уровням изоляции правило простое: повышайте только если реально видите аномалии. READ COMMITTED обычно хватает для большинства OLTP-сценариев. REPEATABLE READ и SERIALIZABLE нужны точечно, когда цена фантомов и несогласованного чтения выше, чем цена блокировок. Иначе вы лечите симптом, а не причину. Схема простая, но дьявол кроется в статистике.
Что проверять в первую очередь:
— нет ли «висячих» транзакций в приложении;
— не тянется ли в них сетевой запрос, внешний API или пользовательский ввод;
— не растут ли ожидания по lock/row lock/page lock;
— не прячется ли проблема в отсутствии индекса, из-за чего транзакция сканирует таблицу и держит блокировки дольше нормы.
Золотое правило: сначала мониторинг, потом индексы. Если видите contention — смотрите не только на запрос, но и на границы транзакции, изоляцию и порядок операций. В продакшене так лучше не делать, и вот почему: длинная транзакция почти всегда становится чужой проблемой.
Коллеги, давайте разберем план выполнения. Транзакция — не просто «обернул в BEGIN и надеюсь». Это еще и блокировки, версия строк, ожидание I/O и риск получить красивый дедлок вместо красивого коммита.
Базовые ошибки почти всегда одни и те же: держат транзакцию открытой дольше, чем нужно; делают внутри нее тяжелый SELECT без фильтра; смешивают чтение и запись в одном блоке, хотя можно разделить. Чем дольше живет транзакция, тем больше шанс, что она начнет мешать соседям.
По уровням изоляции правило простое: повышайте только если реально видите аномалии. READ COMMITTED обычно хватает для большинства OLTP-сценариев. REPEATABLE READ и SERIALIZABLE нужны точечно, когда цена фантомов и несогласованного чтения выше, чем цена блокировок. Иначе вы лечите симптом, а не причину. Схема простая, но дьявол кроется в статистике.
Что проверять в первую очередь:
— нет ли «висячих» транзакций в приложении;
— не тянется ли в них сетевой запрос, внешний API или пользовательский ввод;
— не растут ли ожидания по lock/row lock/page lock;
— не прячется ли проблема в отсутствии индекса, из-за чего транзакция сканирует таблицу и держит блокировки дольше нормы.
Золотое правило: сначала мониторинг, потом индексы. Если видите contention — смотрите не только на запрос, но и на границы транзакции, изоляцию и порядок операций. В продакшене так лучше не делать, и вот почему: длинная транзакция почти всегда становится чужой проблемой.
Параметры БД — не тюнинг на глаз: как не устроить себе тормоза
Коллеги, давайте разберем план выполнения. Конфиг БД нельзя «подкрутить» ради красоты: почти каждый параметр влияет на память, I/O или конкуренцию за ресурсы. Если менять всё подряд, получите не ускорение, а новый набор проблем.
Рабочий порядок такой:
— сначала снимите базовую картину: load, latency, cache hit, wait events, блокировки;
— меняйте один параметр за раз, иначе не поймёте, что именно сработало;
— фиксируйте до/после на одинаковой нагрузке, а не на «вроде стало легче»;
— проверяйте, не выросла ли цена оптимизации: больше RAM — меньше места под ОС, агрессивный кеш — больше риск вытеснения.
Схема простая, но дьявол кроется в статистике. Без актуальной статистики оптимизатор выбирает плохие планы, а без контроля I/O любой «улучшенный» кеш может просто перенести узкое место на диск. И да, параметр, который помогает на чтении, часто бьёт по записи или по параллельности.
Золотое правило: сначала мониторинг, потом индексы. То же самое и с конфигом: сначала понять профиль нагрузки, потом трогать память, чекпойнты, логирование, очереди и лимиты. В продакшене так лучше не делать, и вот почему: откат параметра занимает минуты, а деградация под пиком — уже инцидент.
Поменяли настройку — сразу проверьте план, wait’ы и реальный I/O. Если метрики не улучшились, не «дожимайте» параметр дальше: откат часто быстрее и дешевле.
Коллеги, давайте разберем план выполнения. Конфиг БД нельзя «подкрутить» ради красоты: почти каждый параметр влияет на память, I/O или конкуренцию за ресурсы. Если менять всё подряд, получите не ускорение, а новый набор проблем.
Рабочий порядок такой:
— сначала снимите базовую картину: load, latency, cache hit, wait events, блокировки;
— меняйте один параметр за раз, иначе не поймёте, что именно сработало;
— фиксируйте до/после на одинаковой нагрузке, а не на «вроде стало легче»;
— проверяйте, не выросла ли цена оптимизации: больше RAM — меньше места под ОС, агрессивный кеш — больше риск вытеснения.
Схема простая, но дьявол кроется в статистике. Без актуальной статистики оптимизатор выбирает плохие планы, а без контроля I/O любой «улучшенный» кеш может просто перенести узкое место на диск. И да, параметр, который помогает на чтении, часто бьёт по записи или по параллельности.
Золотое правило: сначала мониторинг, потом индексы. То же самое и с конфигом: сначала понять профиль нагрузки, потом трогать память, чекпойнты, логирование, очереди и лимиты. В продакшене так лучше не делать, и вот почему: откат параметра занимает минуты, а деградация под пиком — уже инцидент.
Поменяли настройку — сразу проверьте план, wait’ы и реальный I/O. Если метрики не улучшились, не «дожимайте» параметр дальше: откат часто быстрее и дешевле.
Секционирование таблиц: ускоряет не всё, а только правильно выбранные запросы
Коллеги, давайте разберем план выполнения. Partitioning — это не «магическая кнопка для большой таблицы», а способ сократить объём данных, который реально трогает запрос. Если фильтр не попадает в ключ секции, движок легко прочитает все партиции и вы получите тот же full scan, только с лишней сложностью в схеме.
Рабочая схема обычно такая:
— секционируем по признаку, который почти всегда есть в WHERE: дата, tenant_id, статус с низкой кардинальностью редко подходит;
— следим за partition pruning: без него пользы мало;
— не забываем про локальные и глобальные индексы: локальные проще обслуживать, глобальные иногда нужны, но могут дорого стоить в DML;
— планируем жизненный цикл данных: удаление старых секций быстрее, чем DELETE по строкам. Посмотрим, что тут с I/O в реальности.
Типовая ошибка — сделать слишком мелкие партиции. Тогда оптимизатор начинает тонуть в метаданных, растут накладные расходы на планирование, а выигрыш на чтении исчезает. Другая крайность — секционировать «на всякий случай» и потом удивляться, почему простые запросы усложнились, а блокировки и обслуживание стали тяжелее.
Золотое правило: сначала мониторинг, потом индексы. Сначала проверьте, какие запросы реально выигрывают от pruning, какие секции читаются, и как ведут себя INSERT/UPDATE/DELETE. Если partitioning не уменьшает объём чтения или не упрощает purge, он вам не помощник, а дополнительный слой сложности.
Коллеги, давайте разберем план выполнения. Partitioning — это не «магическая кнопка для большой таблицы», а способ сократить объём данных, который реально трогает запрос. Если фильтр не попадает в ключ секции, движок легко прочитает все партиции и вы получите тот же full scan, только с лишней сложностью в схеме.
Рабочая схема обычно такая:
— секционируем по признаку, который почти всегда есть в WHERE: дата, tenant_id, статус с низкой кардинальностью редко подходит;
— следим за partition pruning: без него пользы мало;
— не забываем про локальные и глобальные индексы: локальные проще обслуживать, глобальные иногда нужны, но могут дорого стоить в DML;
— планируем жизненный цикл данных: удаление старых секций быстрее, чем DELETE по строкам. Посмотрим, что тут с I/O в реальности.
Типовая ошибка — сделать слишком мелкие партиции. Тогда оптимизатор начинает тонуть в метаданных, растут накладные расходы на планирование, а выигрыш на чтении исчезает. Другая крайность — секционировать «на всякий случай» и потом удивляться, почему простые запросы усложнились, а блокировки и обслуживание стали тяжелее.
Золотое правило: сначала мониторинг, потом индексы. Сначала проверьте, какие запросы реально выигрывают от pruning, какие секции читаются, и как ведут себя INSERT/UPDATE/DELETE. Если partitioning не уменьшает объём чтения или не упрощает purge, он вам не помощник, а дополнительный слой сложности.
Forwarded from AFF.TOP
This media is not supported in your browser
VIEW IN TELEGRAM
Cloudflare сделал собственный кошелёк
Cloudflare запустил Wallet и id, чтобы ИИ-агенты могли проходить верификацию и оплачивать сервисы от имени пользователя без его участия. Для арбитража и CPA это намёк на новый слой авторизации и платежей в интернете: меньше трения, больше автоматизации. Но вместе с удобством вырастает значение антифрода и контроля доступа к офферам и платежам.
➡️ Читайте на сайте: https://aff.top/blog/cloudflare-sdelal-sobstvennyi-koshelek
🧠 Ещё больше инсайтов → в канале AFF.top
Cloudflare запустил Wallet и id, чтобы ИИ-агенты могли проходить верификацию и оплачивать сервисы от имени пользователя без его участия. Для арбитража и CPA это намёк на новый слой авторизации и платежей в интернете: меньше трения, больше автоматизации. Но вместе с удобством вырастает значение антифрода и контроля доступа к офферам и платежам.
➡️ Читайте на сайте: https://aff.top/blog/cloudflare-sdelal-sobstvennyi-koshelek
🧠 Ещё больше инсайтов → в канале AFF.top