Marius Voß
DevRel · edge infra
Пише для Elido з квітень 2024 р.
Marius runs developer relations and edge infrastructure at Elido. Before joining the team in 2024 he spent eight years at a Berlin-based CDN operator and two years on the network reliability team at a German neo-bank, where he learned that the worst kind of latency bug is the one that only shows up at 3% of edge POPs.
He maintains the Elido edge-redirect runbook, contributes to the Helm chart, and writes the engineering posts that go deeper than "we use ClickHouse for analytics" — including the cache-invalidation propagation post, the multi-region failover testing post, and the on-demand TLS deep dive.
Outside Elido, Marius is a regular speaker at the German Cloud Native meetup and contributes occasional patches to fasthttp.
Експертиза
- Edge networking and routing
- Multi-region failover and capacity planning
- ClickHouse query tuning
- Helm + Kubernetes for self-hosted Elido
Дописи від Marius Voß
Перевірка підписів webhook: HMAC-SHA256 у Node, Python, Go
Як перевірити підпис webhook за допомогою HMAC-SHA256: сире тіло, порівняння зі сталим часом, вікно повторного відтворення та ротація секретів, з кодом для Node, Python, Go і n8n.
ІнженеріяAPI аналітики посилань: отримуйте статистику кліків з API-ключем
Посібник з API аналітики посилань: які звіти про кліки може читати API-ключ, параметри запиту, форми JSON-відповідей, сторінкування курсором і скрипт щоденного звіту в Slack.
ТуторіалиДозволи API-ключів: найменші привілеї для інструментів посилань
Дозволи API-ключів для інструментів посилань без помилок: ключі, прив'язані до робочого простору, обмеження ролями, хеші з pepper, окремі ліміти частоти для кожного ключа, ротація і безпечна передача в n8n або Make.
ІнженеріяСамостійно розгорнута автоматизація посилань на n8n: від Docker до вебхуків
Запустіть самостійно розгорнуту автоматизацію посилань n8n з вебхуками Elido, Docker Compose і режимом черги, тримаючи дані робочих процесів на інфраструктурі, яку контролюєте ви, в ЄС.
ІнтеграціїURL-скорочувач для n8n: вузол HTTP Request чи community-вузол Elido
Побудуйте n8n URL-скорочувач на базі API Elido: налаштування HTTP Request, ID домену та робочого простору, три робочі процеси для коротких посилань, повторні спроби і community-вузол Elido.
ІнтеграціїВідстеження посилань Mixpanel: кліки коротких посилань як події
Відстеження посилань Mixpanel з Elido: кожен клік по короткому посиланню стає подією link_click на боці сервера. Налаштування, властивості, обмеження ідентифікації і як це перевірити.
ІнтеграціїСкорочувач URL у GitLab CI: короткі посилання з кожного пайплайна
Використовуйте GitLab CI як скорочувач URL: створюйте короткі посилання на review app для кожного merge request і перенаправляйте стабільне посилання latest на тегах за допомогою замаскованого захищеного ключа.
ІнтеграціїСкорочуйте посилання в нотатках до випусків і відстежуйте кожне завантаження
Скорочуйте посилання в нотатках до випусків за допомогою стабільного посилання на останню версію, яке ви перенаправляєте для кожного випуску, окремого посилання з мітками для кожного каналу та даних про кліки, що показують, що спричинило завантаження.
ІнтеграціїСкорочувач URL для GitHub Actions: короткі посилання з CI
Створюйте й оновлюйте короткі посилання з GitHub Actions: API-ключ як зашифрований секрет, робочий workflow, ідемпотентні upsert-операції та ключі з мінімальними привілеями.
ІнтеграціїМоніторинг URL-адрес у Datadog: метрики редиректів для коротких посилань
Моніторинг URL-адрес коротких посилань у Datadog: журнали кліків і метрики, які надсилає Elido, дашборд затримки редиректів на основі Synthetics, монітори та реалістичний SLO.
ІнтеграціїGemini URL Shortener: де насправді працюють виклики інструментів
Gemini може створювати справжні короткі посилання, але не в додатку. Чому Gems не можуть викликати ваш API і як під'єднати CLI та API, щоб посилання працювало.
ІнтеграціїСкорочувач URL для ChatGPT: що працює, а що лише вдає
ChatGPT не може самостійно скоротити URL і вигадає його. Три способи отримати справжнє коротке посилання, а також спосіб скоротити посилання на чат ChatGPT.
ІнтеграціїCanonical проти 301-редиректу: як обрати правильний сигнал
Тег canonical - це підказка, яку пошукові системи можуть проігнорувати; 301-редирект - це інструкція, яку вони мусять виконати. Який сигнал підходить для чотирьох типових випадків дубльованих URL.
ІнженеріяМаксимальна довжина URL: реальне обмеження символів
У специфікації немає максимальної довжини URL. Реальна межа - це найнижче обмеження в ланцюжку, який проходить ваше посилання: браузер, сервер, поштова скринька або QR-код.
Інженеріяllms.txt: пояснюємо, що насправді робить файл для ШІ-краулерів
llms.txt - це Markdown-файл зі списком сторінок для читання моделями ШІ. Що він насправді робить, хто його дотримується сьогодні і чи варто витрачати на публікацію свій час.
AIВідстеження кліків по посиланнях у Salesforce: кліки в записі Contact
Salesforce відстежує кліки лише в листах, які сам надіслав, і більше нічого. Три способи довести кліки по коротких посиланнях до запису - і єдиний, що працює поза межами email.
ІнтеграціїQR-код EPC: пояснення платіжного QR-стандарту SEPA
QR-код EPC кодує кредитний переказ SEPA, а не URL, тому банківський застосунок може заповнити форму заздалегідь. Що міститься у payload і чому його неможливо відстежити.
МожливостіКліки короткого посилання проти сеансів GA4: чому вони ніколи не збігаються
Ваш скорочувач рахує 1000 кліків, а GA4 показує 620 сеансів. Шість причин розбіжності цих двох чисел і розмір розриву, який означає, що щось зламано.
ТуторіалиШІ-краулери та короткі посилання: що насправді роблять боти
Краулери для навчання, фетчери в реальному часі та пошукові боти - усі вони звертаються до ваших редиректів. Які з них ідуть за 301, у скільки вони обходяться вашим лічильникам кліків і кого варто пропускати.
ІнженеріяURL-кодування пояснене: які символи екранувати
URL-кодування замінює символ знаком відсотка і двома шістнадцятковими цифрами, щоб його не сприйняли як синтаксис URL. Які символи потребують цього і де це ламається.
Інженерія301 редирект у .htaccess: правила, порядок виконання, рядки запиту
301 редирект у .htaccess - це один рядок mod_alias. Ось цей рядок, коли замість нього правильним інструментом є RewriteRule, і чому порядок виконання важливіший за позицію рядка.
ТуторіалиЧи закінчується термін дії QR-кодів? Що ламається і як цього уникнути
Надрукований малюнок ніколи не втрачає термін дії. Втрачає термін дії редирект за динамічним QR-кодом - п'ять способів, якими це відбувається, і як пережити кожен з них.
МожливостіРозмір зображення Open Graph: один файл для кожної платформи
1200x630 покриває Facebook, LinkedIn, X, Slack та WhatsApp. Специфікації, безпечна зона, що рятує текст від обрізання, і чому оновлене зображення відмовляється показуватися.
ТуторіалиЯк редиректити URL-адресу: шість способів і коли який підходить
Редирект - це HTTP-відповідь, тож справжнє питання - який рівень відповідає на запит: реєстратор, сервер, CMS, платформа, клієнтська сторона чи кероване коротке посилання.
ТуторіалиШтрихкод проти QR-коду: що з них має бути на вашому товарі
Штрихкод ідентифікує товар для системи, яка вже його знає. QR-код з'єднує людину з контентом. Місткість, сканери і роздрібний дедлайн 2027 року.
МожливостіЦикл редиректів: як знайти і виправити ERR_TOO_MANY_REDIRECTS
Цикл редиректів гойдає браузер між URL-адресами, доки той не здається. Простежте ланцюжок редиректів однією командою, визначте правило, яке суперечить іншому, і виправте це назавжди.
ІнженеріяCLI сервісу скорочення URL: скорочуйте посилання з термінала
Скорочуйте URL із командного рядка за допомогою curl і jq, обгорніть виклик у функцію оболонки, копіюйте результат у буфер обміну та скорочуйте цілий файл паралельно через xargs.
ІнженеріяКоротке посилання не працює? Діагностуйте це однією командою
Коротке посилання, яке видає 404, попереджає про сертифікат або відкривається в одному застосунку, але не в іншому, має чотири причини. Прочитайте заголовки відповіді - і виправте саме ту, що потрібна.
ТуторіалиQR-код не сканується? Чотири причини та як їх виправити
QR-код, який не сканується, майже завжди має проблему з розміром, тихою зоною, контрастом або надто довгим вмістом. Перевірте їх у такому порядку та виправте потрібну причину.
ТуторіалиЯк скоротити URL у Ruby за допомогою Net::HTTP і Faraday
Скоротіть URL у Ruby за допомогою Net::HTTP без гемів, а потім додайте тайм-аути, повторні спроби та ідемпотентність або доручіть усю роботу Faraday у застосунку Rails.
ІнженеріяЯк скоротити URL у PowerShell за допомогою Invoke-RestMethod
Скоротіть URL у PowerShell однією командою, обробіть помилки 429, не зберігайте API-ключ у скрипті та скоротіть цілий стовпець CSV за допомогою ForEach-Object -Parallel.
ІнженеріяЯк скоротити URL у JavaScript за допомогою fetch і Node
Скоротіть URL у JavaScript одним викликом fetch, потім додайте тайм-аут, повторні спроби та ідемпотентність - і дізнайтеся, чому браузер не підходить для зберігання ключа.
ІнженеріяЯк скоротити URL у Java за допомогою вбудованого HttpClient
Скоротіть URL у Java за допомогою java.net.http без залежностей, а потім додайте тайм-аут, повторні спроби з Idempotency-Key та масове скорочення на віртуальних потоках.
ІнженеріяЯк скоротити URL у Go за допомогою net/http та errgroup
Скоротіть URL у Go за допомогою net/http і JSON-тіла, а потім додайте дедлайн контексту, повторні спроби з Idempotency-Key та обмежене масове скорочення через errgroup.
ІнженеріяЯк скоротити URL в Excel: чотири робочі способи
Формула WEBSERVICE в Excel не може виконувати POST-запити, тому для скорочення посилань потрібні Office Scripts, Power Automate або масовий імпорт. Який спосіб відповідає частоті запуску таблиці.
ІнженеріяЯк скоротити URL у C# за допомогою HttpClient і .NET
Скоротіть URL у C# за допомогою PostAsJsonAsync, а потім підключіть IHttpClientFactory, обробник стійкості, Idempotency-Key і обмежене масове скорочення через Parallel.
ІнженеріяЯк подивитися, куди веде коротке посилання, перш ніж переходити за ним
Розгорніть коротке посилання безпечно: прочитайте заголовок Location однією командою, скористайтеся попереднім переглядом від провайдера і дізнайтеся, що кожен метод розповідає іншій стороні про вас.
ТуторіалиЧому ваші короткі посилання блокуються в Slack і Teams
Короткі посилання блокуються в Slack і Teams, коли домен спільного скорочувача не проходить перевірку безпеки на кшталт Safe Links. Чому так стається і як це виправляє брендований домен.
ІнженеріяАгентна комерція: посилання, створені для використання ШІ-агентами
Агентна комерція означає, що вашими посиланнями переходять і купують ШІ-агенти, а не люди. Чому посилання мають бути стабільними, придатними для машинного розпізнавання і відстежуватися на сервері, щоб це пережити.
ІнженеріяЯк скоротити URL у Python за допомогою бібліотеки requests
Скоротіть URL у Python кількома рядками requests: POST-запит до API скорочувача, зчитування короткого посилання у відповіді, а далі - повторні спроби, ідемпотентність, масова обробка та асинхронність.
ІнженеріяКанал AI Assistant у GA4: що він відстежує, а що пропускає
Новий канал AI Assistant у GA4 виокремлює трафік із ChatGPT, Gemini і Copilot - але не враховує Perplexity і не є ретроактивним. Що він відстежує і в чому прогалини.
ІнженеріяFirefox і Brave руйнують вашу UTM-атрибуцію
Firefox видаляє UTM-параметри, а Brave блокує скрипти, які їх читають, тож приватність браузера непомітно руйнує вашу атрибуцію. Чому це відбувається і як виживають короткі посилання.
ІнженеріяАльтернатива Bitly API для розробників: на що звертати увагу
Альтернатива Bitly API для розробників: де відчутні ліміти запитів і обмеження за планами Bitly, і що натомість повинен давати shortener API, орієнтований на розробників.
ІнженеріяЩо таке динамічне посилання? Редаговані URL-адреси, які можна відстежувати
Що таке динамічне посилання: коротке посилання, ціль якого можна змінити після поширення, чим воно відрізняється від статичних посилань і глибоких посилань, і життя після Firebase.
МожливостіЩо таке глибоке посилання? Просте і зрозуміле пояснення
Глибоке посилання відкриває конкретний екран усередині додатка, а не головний екран. Глибокі посилання проти universal і app links, і життя після Firebase Dynamic Links.
МожливостіБезкоштовний API для скорочення URL: приклади коду, що працюють
Безкоштовний API для скорочення URL з робочими прикладами curl, JavaScript, Python та Go, а також чесна частина: що обмежують безкоштовні плани і що потрібно продакшену.
ІнженеріяРозширення браузера для скорочення посилань в один клік
Розширення браузера для скорочення посилань скорочує активну вкладку в один клік, додає мітки кампаній і копіює коротке посилання та QR-код у буфер обміну.
МожливостіОптимізація відповідей (AEO): як отримати цитування від ШІ
Оптимізація відповідей (AEO) - це те, як отримати цитування від ChatGPT, Perplexity та AI Overviews. Сигнали, які справді працюють, і як виміряти трафік від ШІ.
AIУразливості відкритого редиректу і як їх запобігти
Відкритий редирект дозволяє зловмиснику вигнути довірений лінк на шкідливий сайт. Як працює ця вада, чому вона живить фішинг і серверне виправлення, яке її вбиває.
ІнженеріяЯк побудувати скорочувач URL: архітектура та код
Як побудувати скорочувач URL, що витримає навантаження у продакшн: генерація коротких кодів, шлях перенаправлення, кешування, відстеження кліків, захист від зловживань і що потрібно підтримувати.
ІнженеріяТипи URL-перенаправлень: 301, 302, 307, 308 та інші
Пояснення кожного типу URL-перенаправлення - 301, 302, 303, 307, 308, meta refresh і JavaScript - що кожне з них робить, як впливає на SEO і яке вибрати.
Інженерія301 проти 302: який редирект мають використовувати короткі посилання
301 - це постійний редирект, що передає сигнали ранжування; 302 - тимчасовий і зазвичай не передає. Що це означає для коротких посилань, SEO та кешування.
ІнженеріяAPI скорочувача URL: ліміти запитів, повторні спроби, ідемпотентність
Як викликати API скорочувача URL у продакшні: token-bucket ліміти, коди статусу для повторних спроб з backoff, та ключі ідемпотентності, що запобігають дублікатам.
ІнженеріяSlack-бот для скорочення URL: скорочуйте посилання та маршрутизуйте алерти
Встановіть застосунок Elido для Slack, використовуйте slash-команду /shorten і направляйте порогові алерти до будь-якого каналу без написання обробників webhook.
ІнтеграціїМоніторинг коротких посилань із Sentry і Datadog: хто за що відповідає
Моніторинг коротких посилань із Sentry і Datadog: які події Elido стають issue в Sentry, що отримує Datadog і як самостійно стежити за затримкою редиректу.
ІнженеріяІнтеграція Linear зі скорочувачем посилань - автоматичне створення тікетів за алертами
Підключіть виявлення зламаних посилань Elido та стрибки порогів кліків до команди Linear. Налаштування, фільтр команди, маршрутизація міток і реальні сценарії збоїв.
ІнтеграціїАлерти Discord для скорочувача URL: налаштування Telegram, payload-структури, типові пастки
Надсилайте сповіщення про битті посилання, перевищення порогу кліків і помилки сканування у Discord-вебхуки або Telegram-бот. Налаштування, структура payload, поширені проблеми.
ІнтеграціїWordPress URL shortener: 4 способи скорочувати та відстежувати посилання
Як додати WordPress URL shortener з брендованими короткими посиланнями та відстеженням кліків - через плагін, REST API Elido, Zapier або вручну
ІнтеграціїКороткі посилання з паролевим захистом: коли і як закрити посилання на вхід
Що таке коротке посилання з паролевим захистом, для яких випадків воно підходить, як паролевий шлагбаум працює на перенаправленні та обмеження безпеки, які слід враховувати
МожливостіЗакінчення терміну посилань та самознищувальні посилання: пояснення
Що таке закінчення терміну посилань та самознищувальні посилання, коли використовувати правила дати, кількості кліків та одноразового доступу, та що граничний сервер повертає в момент закінчення терміну
МожливостіЯк працюють скорочувачі URL? Механіка пояснена
Як працюють скорочувачі URL? Зберігають відповідність слага та призначення, шукають ключ при кожному кліку, повертають HTTP-перенаправлення. Механіка від початку до кінця
ІнженеріяВхід через соціальні мережі для URL-скорочувачів: авторизація без пароля
Увійдіть в Elido через Google, GitHub, Slack та п'ять інших провайдерів. Як соціальний вхід працює для інструменту посилань і що це означає для зберігання даних в ЄС.
МожливостіВебхуки для подій посилань: payload, підписи, повторні спроби
Вебхуки URL-скорочувача для подій посилань: реальна структура payload, перевірки HMAC X-Webhook-Signature на Node і Python, політика повторних спроб і ключі дедублікації.
МожливостіAPI URL-скорочувача: 30-хвилинний швидкий старт п'ятьма мовами
Від нуля до робочої автоматизації коротких посилань на TypeScript, Python, Go, Ruby та PHP - авторизація, ідемпотентність, обробка помилок і підводні камені продакшену.
МожливостіВипуск міграції з TinyURL: Pro/Bulk REST, без шляху для безкоштовного рівня
Як ми створили імпорт TinyURL Pro/Bulk в один клік для Elido - чому публічний TinyURL не має API, термінологія alias-vs-slug та обмеження, яке ми впровадили навмисно.
ІнженеріяЗапуск міграції з Short.io: поштучна розбивка по доменах по 150 посилань на сторінку
Як ми створили імпорт з Short.io в один клік для Elido - модель розбивки по доменах, правило деактивації приватних посилань та найшвидше з наших п'яти джерел міграції.
ІнженеріяЗапуск міграції з Rebrandly: пагінація по 25 записів на сторінку та 30-хвилинний бюджет
Як ми створили імпорт з Rebrandly в один клік для Elido - повільний розмір сторінки, UX фільтрації робочих просторів та те, що ми свідомо не мігруємо.
ІнженеріяВипуск міграції з Dub.co: папки стають тегами
Як ми створили імпорт з Dub.co в один клік для Elido - найчистіший API з п'яти, перетворення папок на теги, і чому цей перехід підходить командам, які дбають про проживання в ЄС.
ІнженеріяПрийом кліків за принципом «вистрілив і забув» за допомогою Redpanda
Як граничні POP-вузли надсилають події кліків, не блокуючи перенаправлення, як воркер click-ingester групує дані в ClickHouse і чим ми жертвуємо заради виграшу в затримці
ІнженеріяEdge POP проти DNS-only маршрутизації: компроміс бюджету затримки
Чому DNS-балансування навантаження досягає стелі близько 50мс p50 і що дає anycast edge POP нижче цієї позначки - чотири числа, що визначають, яка архітектура підходить вашому URL-скорочувачу
ІнженеріяСтратегія кешування для перенаправлень URL: L1 LRU та L2 Redis
Як дворівневий кеш перед джерелом сервісу скорочення URL підтримує затримку перенаправлення p95 нижче 15 мс - політика витіснення, стратегія розігріву та сценарії збоїв, з якими ми стикалися на практиці
ІнженеріяМіграція з Firebase Dynamic Links на Elido
Firebase Dynamic Links відключений з 2025-08-25. Кожне FDL-посилання тепер повертає 404. Ось 30-хвилинний шлях міграції на Elido - розміщення в ЄС, SDK не потрібен.
ПорівнянняElido проти Dub: SSO, відстеження конверсій, резидентність в ЄС
Dub.co - сучасний улюбленець серед скорочувачів URL, але SSO, відстеження конверсій та резидентність даних в ЄС залишаються недоступними нижче рівня Business. Де Elido закриває цей розрив.
ПорівнянняПідключення Sentry/GlitchTip у 12 сервісах Go без шкоди для hot path
Як Elido впровадили спільний пакет sentryinit, який забезпечує однакове автозахоплення panic + 5xx для кожного сервісу Go - і залишається zero-alloc у межах бюджету p95 15 мс для edge-redirect.
ІнженеріяКлючоваЧому ми використовуємо ClickHouse для аналітики кліків (а не Postgres)
Навантаження складає понад 100 млн подій на місяць, воно інтенсивне на запис і має форму аналітичних запитів. Чому колоночне зберігання перемагає, схему, яку ми використовуємо, і на що ми натрапили через 90 днів використання Postgres
ІнженеріяДосягнення p95 < 15 мс для редиректів із FRA, ASH та SGP
Як шлях edge-redirect в Elido утримує бюджет p95 у 15 мс при попаданні в кеш (cache HIT) у трьох регіонах - архітектура, стратегія кешування та вимірювання в реальних регіонах
ІнженеріяКлючоваГлибокі посилання для мобільних додатків без SDK
Universal Links + Android App Links покривають 80% випадків використання диплінкінгу без платного SDK. Два файли асоціації, компроміси та інструкція
МожливостіSelf-hosting Elido на k3s - повний посібник
Покроковий посібник із розгортання повного стека Elido у кластері k3s: налаштування Helm, 14 сервісів, шар даних у вигляді StatefulSets, TLS за запитом від Caddy, резервне копіювання та стратегія оновлення.
ІнженеріяКлючоваПідключення Elido до Claude та Cursor через MCP - практичний посібник
Як інтегрувати @elido/mcp-server у Claude Desktop та Cursor, щоб ваш ШІ-агент міг скорочувати URL-адреси, генерувати QR-коди та переглядати аналітику кліків безпосередньо в робочому процесі.
МожливостіКлючоваЯк налаштувати кастомний домен з TLS за 5 хвилин (використовуючи Elido)
Покрокова інструкція про те, як підключити власний піддомен до Elido, додати два DNS-записи та отримати коротке посилання з HTTPS з автоматичним TLS - включаючи виклик API, поширені помилки та опис того, як насправді працює механізм сертифікатів.
МожливостіДинамічні vs статичні QR-коди: що насправді змінюється
Статичний QR кодує URL безпосередньо. Динамічний QR кодує коротке посилання. Різниця визначає, чи зможете ви редагувати ціль, відстежувати сканування або налаштовувати A/B-маршрутизацію - і це важливо врахувати ще до друку.
МожливостіКороткі посилання на власних доменах: DNS, TLS та робота на межі (edge)
Як насправді працюють брендовані короткі посилання: верифікація DNS, випуск TLS за запитом через ACME, бюджети затримки перенаправлення на межі та три режими збоїв, з якими стикаються оператори в продакшені
МожливостіКеруйте своїми короткими посиланнями за допомогою Terraform
Ми випустили єдиний Terraform провайдер у сфері скорочення URL - terraform-provider-elido. Ось що він робить, як працює життєвий цикл ресурсів та які інженерні компроміси за цим стоять.
ІнженеріяКлючоваЗапуск міграції з Bitly: воркер, токен та 30-хвилинний бюджет
Як ми створили імпорт з Bitly в один клік для Elido - архітектура воркера, правила вирішення конфліктів та чотири обмеження, що гарантують безпеку goroutine.
ІнженеріяПояснення смарт-лінків: маршрутизація на edge без додаткових сервісів
Що таке смарт-лінк, де він працює та параметри маршрутизації, які підтримує Elido. Технічний розгляд інвалідації кешу на edge, семантики першої відповідності та випадків, коли їх не варто використовувати
МожливостіКлючова