Статті: Інженерія
Як URL-скорочувач насправді працює під навантаженням: бюджети затримки редиректів, ієрархії кешу, конвеєри аналітики на ClickHouse, ідемпотентні API та інфраструктурні рішення, що стоять за edge Elido. Це інженерні заглиблення з реальними цифрами з наших продакшн-систем, написані для розробників, які хочуть будувати на платформі посилань або просто люблять проєктування систем. Якщо ви оцінюєте вендорів за їхніми сторінками про архітектуру, почніть звідси.
- Інженерія
Перевірка підписів webhook: HMAC-SHA256 у Node, Python, Go
Як перевірити підпис webhook за допомогою HMAC-SHA256: сире тіло, порівняння зі сталим часом, вікно повторного відтворення та ротація секретів, з кодом для Node, Python, Go і n8n.
10 хв читанняverify webhook signature · webhook signature verification · hmac webhook - Інженерія
Дозволи API-ключів: найменші привілеї для інструментів посилань
Дозволи API-ключів для інструментів посилань без помилок: ключі, прив'язані до робочого простору, обмеження ролями, хеші з pepper, окремі ліміти частоти для кожного ключа, ротація і безпечна передача в n8n або Make.
9 хв читанняapi key permissions · least privilege api keys · api key scopes - Інженерія
Canonical проти 301-редиректу: як обрати правильний сигнал
Тег canonical - це підказка, яку пошукові системи можуть проігнорувати; 301-редирект - це інструкція, яку вони мусять виконати. Який сигнал підходить для чотирьох типових випадків дубльованих URL.
8 хв читанняcanonical vs 301 redirect · rel=canonical · canonical tag - Інженерія
Максимальна довжина URL: реальне обмеження символів
У специфікації немає максимальної довжини URL. Реальна межа - це найнижче обмеження в ланцюжку, який проходить ваше посилання: браузер, сервер, поштова скринька або QR-код.
7 хв читанняmaximum url length · max url length · url character limit - Інженерія
ШІ-краулери та короткі посилання: що насправді роблять боти
Краулери для навчання, фетчери в реальному часі та пошукові боти - усі вони звертаються до ваших редиректів. Які з них ідуть за 301, у скільки вони обходяться вашим лічильникам кліків і кого варто пропускати.
6 хв читанняai crawlers · gptbot · robots.txt - Інженерія
URL-кодування пояснене: які символи екранувати
URL-кодування замінює символ знаком відсотка і двома шістнадцятковими цифрами, щоб його не сприйняли як синтаксис URL. Які символи потребують цього і де це ламається.
6 хв читанняurl encoding · percent encoding · encodeuricomponent - Інженерія
Цикл редиректів: як знайти і виправити ERR_TOO_MANY_REDIRECTS
Цикл редиректів гойдає браузер між URL-адресами, доки той не здається. Простежте ланцюжок редиректів однією командою, визначте правило, яке суперечить іншому, і виправте це назавжди.
10 хв читанняredirect loop · err_too_many_redirects · too many redirects - Інженерія
CLI сервісу скорочення URL: скорочуйте посилання з термінала
Скорочуйте URL із командного рядка за допомогою curl і jq, обгорніть виклик у функцію оболонки, копіюйте результат у буфер обміну та скорочуйте цілий файл паралельно через xargs.
4 хв читанняurl shortener cli · shorten url command line · curl url shortener - Інженерія
Як скоротити URL у Ruby за допомогою Net::HTTP і Faraday
Скоротіть URL у Ruby за допомогою Net::HTTP без гемів, а потім додайте тайм-аути, повторні спроби та ідемпотентність або доручіть усю роботу Faraday у застосунку Rails.
5 хв читанняhow to shorten a url in ruby · ruby url shortener · shorten url ruby net http - Інженерія
Як скоротити URL у PowerShell за допомогою Invoke-RestMethod
Скоротіть URL у PowerShell однією командою, обробіть помилки 429, не зберігайте API-ключ у скрипті та скоротіть цілий стовпець CSV за допомогою ForEach-Object -Parallel.
5 хв читанняhow to shorten a url in powershell · powershell url shortener · invoke-restmethod post json - Інженерія
Як скоротити URL у PHP за допомогою curl, Guzzle або WordPress
Скорочуйте URL у PHP за допомогою короткого блоку curl, того самого запиту в Guzzle або Laravel, версії для WordPress із wp_remote_post, а також повторних спроб і масового скорочення.
6 хв читанняhow to shorten a url in php · php url shortener · shorten url php curl - Інженерія
Як скоротити URL у JavaScript за допомогою fetch і Node
Скоротіть URL у JavaScript одним викликом fetch, потім додайте тайм-аут, повторні спроби та ідемпотентність - і дізнайтеся, чому браузер не підходить для зберігання ключа.
6 хв читанняhow to shorten a url in javascript · url shortener node js · shorten url javascript fetch - Інженерія
Як скоротити URL у Java за допомогою вбудованого HttpClient
Скоротіть URL у Java за допомогою java.net.http без залежностей, а потім додайте тайм-аут, повторні спроби з Idempotency-Key та масове скорочення на віртуальних потоках.
5 хв читанняhow to shorten a url in java · java url shortener api · java httpclient post json - Інженерія
Як скоротити URL у Go за допомогою net/http та errgroup
Скоротіть URL у Go за допомогою net/http і JSON-тіла, а потім додайте дедлайн контексту, повторні спроби з Idempotency-Key та обмежене масове скорочення через errgroup.
7 хв читанняhow to shorten a url in go · golang url shortener api · shorten url go net/http - Інженерія
Як скоротити URL в Excel: чотири робочі способи
Формула WEBSERVICE в Excel не може виконувати POST-запити, тому для скорочення посилань потрібні Office Scripts, Power Automate або масовий імпорт. Який спосіб відповідає частоті запуску таблиці.
5 хв читанняhow to shorten urls in excel · excel url shortener · webservice function excel - Інженерія
Як скоротити URL у C# за допомогою HttpClient і .NET
Скоротіть URL у C# за допомогою PostAsJsonAsync, а потім підключіть IHttpClientFactory, обробник стійкості, Idempotency-Key і обмежене масове скорочення через Parallel.
4 хв читанняhow to shorten a url in c# · c# url shortener api · httpclient postasjsonasync - Інженерія
Чому ваші короткі посилання блокуються в Slack і Teams
Короткі посилання блокуються в Slack і Teams, коли домен спільного скорочувача не проходить перевірку безпеки на кшталт Safe Links. Чому так стається і як це виправляє брендований домен.
4 хв читанняshort links blocked in slack · bitly links blocked · microsoft teams safe links - Інженерія
Агентна комерція: посилання, створені для використання ШІ-агентами
Агентна комерція означає, що вашими посиланнями переходять і купують ШІ-агенти, а не люди. Чому посилання мають бути стабільними, придатними для машинного розпізнавання і відстежуватися на сервері, щоб це пережити.
4 хв читанняagentic commerce · agentic ai checkout · links for ai agents - Інженерія
Як скоротити URL у Python за допомогою бібліотеки requests
Скоротіть URL у Python кількома рядками requests: POST-запит до API скорочувача, зчитування короткого посилання у відповіді, а далі - повторні спроби, ідемпотентність, масова обробка та асинхронність.
6 хв читанняhow to shorten a url in python · python url shortener · shorten url python requests - Інженерія
Канал AI Assistant у GA4: що він відстежує, а що пропускає
Новий канал AI Assistant у GA4 виокремлює трафік із ChatGPT, Gemini і Copilot - але не враховує Perplexity і не є ретроактивним. Що він відстежує і в чому прогалини.
4 хв читанняga4 ai assistant channel · ga4 ai traffic · track chatgpt traffic ga4 - Інженерія
Firefox і Brave руйнують вашу UTM-атрибуцію
Firefox видаляє UTM-параметри, а Brave блокує скрипти, які їх читають, тож приватність браузера непомітно руйнує вашу атрибуцію. Чому це відбувається і як виживають короткі посилання.
4 хв читанняfirefox strip utm parameters · browsers strip utm · brave utm tracking - Інженерія
Альтернатива Bitly API для розробників: на що звертати увагу
Альтернатива Bitly API для розробників: де відчутні ліміти запитів і обмеження за планами Bitly, і що натомість повинен давати shortener API, орієнтований на розробників.
4 хв читанняbitly api alternative · bitly api · url shortener api - Інженерія
Безкоштовний API для скорочення URL: приклади коду, що працюють
Безкоштовний API для скорочення URL з робочими прикладами curl, JavaScript, Python та Go, а також чесна частина: що обмежують безкоштовні плани і що потрібно продакшену.
5 хв читанняfree url shortener api · url shortener api · shorten url api - Інженерія
Уразливості відкритого редиректу і як їх запобігти
Відкритий редирект дозволяє зловмиснику вигнути довірений лінк на шкідливий сайт. Як працює ця вада, чому вона живить фішинг і серверне виправлення, яке її вбиває.
5 хв читанняopen redirect vulnerability · open redirect · unvalidated redirect - Інженерія
Як побудувати скорочувач URL: архітектура та код
Як побудувати скорочувач URL, що витримає навантаження у продакшн: генерація коротких кодів, шлях перенаправлення, кешування, відстеження кліків, захист від зловживань і що потрібно підтримувати.
8 хв читанняbuild a url shortener · url shortener system design · short code generation - Інженерія
Типи URL-перенаправлень: 301, 302, 307, 308 та інші
Пояснення кожного типу URL-перенаправлення - 301, 302, 303, 307, 308, meta refresh і JavaScript - що кожне з них робить, як впливає на SEO і яке вибрати.
6 хв читанняtypes of redirects · url redirect types · 301 redirect - Інженерія
301 проти 302: який редирект мають використовувати короткі посилання
301 - це постійний редирект, що передає сигнали ранжування; 302 - тимчасовий і зазвичай не передає. Що це означає для коротких посилань, SEO та кешування.
6 хв читання301 vs 302 redirect · 301 redirect · 302 redirect - Інженерія
API скорочувача URL: ліміти запитів, повторні спроби, ідемпотентність
Як викликати API скорочувача URL у продакшні: token-bucket ліміти, коди статусу для повторних спроб з backoff, та ключі ідемпотентності, що запобігають дублікатам.
7 хв читанняurl shortener api rate limits · api idempotency key · retry with exponential backoff - Інженерія
Чи шкодять скорочувачі URL для SEO? Механіка, яка справді важлива
Чи шкодять скорочувачі URL для SEO? Надійні - ні: Google передає ранжувальні сигнали через редиректи. Чотири випадки, що коштують вам позицій, і як їх уникнути.
7 хв читанняdo url shorteners hurt seo · are short links bad for seo · 301 vs 302 redirect seo - Інженерія
Моніторинг коротких посилань із Sentry і Datadog: хто за що відповідає
Моніторинг коротких посилань із Sentry і Datadog: які події Elido стають issue в Sentry, що отримує Datadog і як самостійно стежити за затримкою редиректу.
8 хв читанняshort link monitoring · sentry url monitoring · datadog short link metrics - Інженерія
Як працюють скорочувачі URL? Механіка пояснена
Як працюють скорочувачі URL? Зберігають відповідність слага та призначення, шукають ключ при кожному кліку, повертають HTTP-перенаправлення. Механіка від початку до кінця
10 хв читанняhow do url shorteners work · url shortener mechanics · 301 vs 302 redirect - Інженерія
Випуск міграції з TinyURL: Pro/Bulk REST, без шляху для безкоштовного рівня
Як ми створили імпорт TinyURL Pro/Bulk в один клік для Elido - чому публічний TinyURL не має API, термінологія alias-vs-slug та обмеження, яке ми впровадили навмисно.
7 хв читанняtinyurl migration · url shortener · go worker - Інженерія
Запуск міграції з Short.io: поштучна розбивка по доменах по 150 посилань на сторінку
Як ми створили імпорт з Short.io в один клік для Elido - модель розбивки по доменах, правило деактивації приватних посилань та найшвидше з наших п'яти джерел міграції.
6 хв читанняshort.io migration · url shortener · go worker - Інженерія
Запуск міграції з Rebrandly: пагінація по 25 записів на сторінку та 30-хвилинний бюджет
Як ми створили імпорт з Rebrandly в один клік для Elido - повільний розмір сторінки, UX фільтрації робочих просторів та те, що ми свідомо не мігруємо.
6 хв читанняrebrandly migration · url shortener · go worker - Інженерія
Випуск міграції з Dub.co: папки стають тегами
Як ми створили імпорт з Dub.co в один клік для Elido - найчистіший API з п'яти, перетворення папок на теги, і чому цей перехід підходить командам, які дбають про проживання в ЄС.
7 хв читанняdub.co migration · url shortener · go worker - Інженерія
Прийом кліків за принципом «вистрілив і забув» за допомогою Redpanda
Як граничні POP-вузли надсилають події кліків, не блокуючи перенаправлення, як воркер click-ingester групує дані в ClickHouse і чим ми жертвуємо заради виграшу в затримці
10 хв читанняfire and forget click ingestion · redpanda click events · clickhouse batch insert - Інженерія
Edge POP проти DNS-only маршрутизації: компроміс бюджету затримки
Чому DNS-балансування навантаження досягає стелі близько 50мс p50 і що дає anycast edge POP нижче цієї позначки - чотири числа, що визначають, яка архітектура підходить вашому URL-скорочувачу
8 хв читанняedge pop vs dns · anycast vs dns failover · edge routing latency - Інженерія
Стратегія кешування для перенаправлень URL: L1 LRU та L2 Redis
Як дворівневий кеш перед джерелом сервісу скорочення URL підтримує затримку перенаправлення p95 нижче 15 мс - політика витіснення, стратегія розігріву та сценарії збоїв, з якими ми стикалися на практиці
12 хв читанняurl redirect cache · ristretto lru · redis cluster - КлючоваІнженерія
Підключення Sentry/GlitchTip у 12 сервісах Go без шкоди для hot path
Як Elido впровадили спільний пакет sentryinit, який забезпечує однакове автозахоплення panic + 5xx для кожного сервісу Go - і залишається zero-alloc у межах бюджету p95 15 мс для edge-redirect.
12 хв читанняsentry go middleware · glitchtip self-hosted · observability url shortener - Інженерія
Чому ми використовуємо ClickHouse для аналітики кліків (а не Postgres)
Навантаження складає понад 100 млн подій на місяць, воно інтенсивне на запис і має форму аналітичних запитів. Чому колоночне зберігання перемагає, схему, яку ми використовуємо, і на що ми натрапили через 90 днів використання Postgres
12 хв читанняclickhouse click analytics · clickhouse for analytics · click event storage - КлючоваІнженерія
Досягнення p95 < 15 мс для редиректів із FRA, ASH та SGP
Як шлях edge-redirect в Elido утримує бюджет p95 у 15 мс при попаданні в кеш (cache HIT) у трьох регіонах - архітектура, стратегія кешування та вимірювання в реальних регіонах
14 хв читанняurl shortener performance · edge redirect latency · multi-region url shortener - КлючоваІнженерія
Self-hosting Elido на k3s - повний посібник
Покроковий посібник із розгортання повного стека Elido у кластері k3s: налаштування Helm, 14 сервісів, шар даних у вигляді StatefulSets, TLS за запитом від Caddy, резервне копіювання та стратегія оновлення.
13 хв читанняself hosted url shortener · k3s · kubernetes url shortener - КлючоваІнженерія
Керуйте своїми короткими посиланнями за допомогою Terraform
Ми випустили єдиний Terraform провайдер у сфері скорочення URL - terraform-provider-elido. Ось що він робить, як працює життєвий цикл ресурсів та які інженерні компроміси за цим стоять.
12 хв читанняterraform · infrastructure as code · url shortener - Інженерія
Запуск міграції з Bitly: воркер, токен та 30-хвилинний бюджет
Як ми створили імпорт з Bitly в один клік для Elido - архітектура воркера, правила вирішення конфліктів та чотири обмеження, що гарантують безпеку goroutine.
8 хв читанняbitly migration · url shortener · go worker