Articole Inginerie
Cum funcționează de fapt un scurtător de URL-uri sub sarcină: bugete de latență pentru redirecționări, ierarhii de cache, fluxuri de analiză ClickHouse, API-uri idempotente și alegerile de infrastructură din spatele edge-ului Elido. Sunt analize tehnice aprofundate, cu cifre reale din sistemele noastre de producție, scrise pentru dezvoltatorii care vor să construiască pe o platformă de linkuri sau pur și simplu se bucură de design de sisteme. Dacă evaluezi furnizorii după paginile lor de arhitectură, începe aici.
- Inginerie
Canonical vs. redirecționare 301: cum alegi semnalul potrivit
Un tag canonical este un indiciu pe care motoarele de căutare îl pot ignora; o redirecționare 301 este o instrucțiune pe care trebuie s-o respecte. Care dintre ele se potrivește pentru patru situații obișnuite de URL-uri duplicate.
9 min de cititcanonical vs 301 redirect · rel=canonical · canonical tag - Inginerie
Lungimea maximă a unui URL: limita reală de caractere
Nu există o lungime maximă a URL-ului definită în standard. Plafonul real este cea mai joasă limită din lanțul pe care îl traversează linkul tău: browser, server, inbox sau cod QR.
9 min de cititmaximum url length · max url length · url character limit - Inginerie
Crawlere AI și linkuri scurte: ce fac roboții, de fapt
Crawlerele de antrenament, fetcherele live și roboții de căutare ajung toate la redirecționările tale. Care dintre ele urmează un 301, cât te costă la numărul de click-uri și pe care să le lași să treacă.
6 min de cititai crawlers · gptbot · robots.txt - Inginerie
Codificarea URL explicată: ce caractere trebuie codificate
Codificarea URL înlocuiește un caracter cu semnul procent și două cifre hexadecimale, astfel încât acesta să nu poată fi citit ca sintaxă URL. Ce caractere au nevoie de ea și unde se strică.
7 min de cititurl encoding · percent encoding · encodeuricomponent - Inginerie
Buclă de redirecționare: cum găsești și repari ERR_TOO_MANY_REDIRECTS
O buclă de redirecționare aruncă browserul înainte și înapoi între URL-uri până renunță. Urmărește lanțul de redirecționare cu o singură comandă, identifică regula care se contrazice și repară-o definitiv.
11 min de cititredirect loop · err_too_many_redirects · too many redirects - Inginerie
URL Shortener CLI: Shorten Links From the Terminal
Shorten a URL from the command line with curl and jq, wrap it in a shell function, copy to the clipboard, and shorten a whole file with xargs in parallel.
5 min de cititurl shortener cli · shorten url command line · curl url shortener - Inginerie
How to Shorten a URL in Ruby With Net::HTTP and Faraday
Shorten a URL in Ruby with Net::HTTP and no gems, then add timeouts, retries, and idempotency, or hand the whole job to Faraday in a Rails app.
5 min de citithow to shorten a url in ruby · ruby url shortener · shorten url ruby net http - Inginerie
How to Shorten a URL in PowerShell With Invoke-RestMethod
Shorten a URL in PowerShell with one cmdlet, then handle 429s, keep the API key out of the script, and shorten a whole CSV column with ForEach-Object -Parallel.
5 min de citithow to shorten a url in powershell · powershell url shortener · invoke-restmethod post json - Inginerie
How to Shorten a URL in PHP With curl, Guzzle, or WordPress
Shorten a URL in PHP with a short curl block, the same call in Guzzle or Laravel, a WordPress version with wp_remote_post, plus retries and bulk shortening.
7 min de citithow to shorten a url in php · php url shortener · shorten url php curl - Inginerie
How to Shorten a URL in JavaScript With fetch and Node
Shorten a URL in JavaScript with one fetch call, then add a timeout, retries, and idempotency - and see why the browser is the wrong place to hold the key.
7 min de citithow to shorten a url in javascript · url shortener node js · shorten url javascript fetch - Inginerie
How to Shorten a URL in Java With the Built-in HttpClient
Shorten a URL in Java with java.net.http and no dependencies, then add a timeout, retries with an Idempotency-Key, and bulk shortening on virtual threads.
5 min de citithow to shorten a url in java · java url shortener api · java httpclient post json - Inginerie
How to Shorten a URL in Go With net/http and errgroup
Shorten a URL in Go with net/http and a JSON body, then add a context deadline, retries with an Idempotency-Key, and bounded bulk shortening via errgroup.
7 min de citithow to shorten a url in go · golang url shortener api · shorten url go net/http - Inginerie
How to Shorten URLs in Excel: Four Routes That Work
Excel's WEBSERVICE formula cannot POST, so shortening links needs Office Scripts, Power Automate, or a bulk import. Which route fits how often the sheet runs.
5 min de citithow to shorten urls in excel · excel url shortener · webservice function excel - Inginerie
How to Shorten a URL in C# With HttpClient and .NET
Shorten a URL in C# with PostAsJsonAsync, then wire IHttpClientFactory, a resilience handler, an Idempotency-Key, and bounded bulk shortening with Parallel.
5 min de citithow to shorten a url in c# · c# url shortener api · httpclient postasjsonasync - Inginerie
Why Your Short Links Get Blocked in Slack and Teams
Short links get blocked in Slack and Teams when a shared shortener domain fails a security check like Safe Links. Why it happens, and the branded-domain fix.
5 min de cititshort links blocked in slack · bitly links blocked · microsoft teams safe links - Inginerie
Agentic Commerce: Links Built for AI Agents to Use
Agentic commerce means AI agents, not humans, follow your links and buy. Why links must be stable, machine-resolvable, and tracked server-side to survive it.
4 min de cititagentic commerce · agentic ai checkout · links for ai agents - Inginerie
How to Shorten a URL in Python With the requests Library
Shorten a URL in Python with a few lines of requests: POST to a shortener API, read the short link back, then add retries, idempotency, bulk, and async.
6 min de citithow to shorten a url in python · python url shortener · shorten url python requests - Inginerie
GA4's AI Assistant Channel: What It Tracks and Misses
GA4's new AI Assistant channel breaks out ChatGPT, Gemini, and Copilot traffic - but excludes Perplexity and isn't retroactive. What it tracks, and the gaps.
4 min de cititga4 ai assistant channel · ga4 ai traffic · track chatgpt traffic ga4 - Inginerie
Firefox and Brave Are Breaking Your UTM Attribution
Firefox strips UTM parameters and Brave blocks the scripts that read them, so browser privacy is quietly breaking your attribution. Why, and how slugs survive.
4 min de cititfirefox strip utm parameters · browsers strip utm · brave utm tracking - Inginerie
Bitly API Alternative for Developers: What to Look For
A Bitly API alternative for developers: where Bitly's rate limits and plan gating bite, and what a dev-first shortener API should give you instead.
4 min de cititbitly api alternative · bitly api · url shortener api - Inginerie
Free URL Shortener API: Code Examples That Run
A free URL shortener API with runnable curl, JavaScript, Python, and Go examples, plus the honest part: what free tiers gate and what production needs.
5 min de cititfree url shortener api · url shortener api · shorten url api - Inginerie
Open Redirect Vulnerabilities and How to Prevent Them
An open redirect lets an attacker bend a trusted link to a malicious site. How the bug works, why it powers phishing, and the server-side fix that kills it.
6 min de cititopen redirect vulnerability · open redirect · unvalidated redirect - Inginerie
How to Build a URL Shortener: Architecture and Code
How to build a URL shortener that survives production: short-code generation, the redirect path, caching, click tracking, abuse defense, and what to maintain.
8 min de cititbuild a url shortener · url shortener system design · short code generation - Inginerie
Types of URL Redirects: 301, 302, 307, 308, and More
Every URL redirect type explained - 301, 302, 303, 307, 308, meta refresh, and JavaScript - what each does, how it affects SEO, and which one to use.
7 min de citittypes of redirects · url redirect types · 301 redirect - Inginerie
301 vs 302 Redirects: Which One Should Short Links Use
A 301 is a permanent redirect that passes ranking signals; a 302 is temporary and usually does not. What that means for short links, SEO, and caching.
8 min de citit301 vs 302 redirect · 301 redirect · 302 redirect - Inginerie
URL Shortener API: Rate Limits, Retries, Idempotency
How to call a URL shortener API in production: token-bucket rate limits, which status codes to retry with backoff, and idempotency keys that stop duplicates.
8 min de cititurl shortener api rate limits · api idempotency key · retry with exponential backoff - Inginerie
Do URL Shorteners Hurt SEO? The Mechanics That Matter
Do URL shorteners hurt SEO? Reputable ones do not - Google passes ranking signals through redirects. The four cases that cost you rank, and how to avoid them.
8 min de cititdo url shorteners hurt seo · are short links bad for seo · 301 vs 302 redirect seo - Inginerie
Short link monitoring with Sentry and Datadog
Forward 4xx/5xx redirect events and edge latency p99 to Sentry as issues and Datadog as metrics. Sample dashboards, alert thresholds.
8 min de cititshort link monitoring · sentry url monitoring · datadog short link metrics - Inginerie
How Do URL Shorteners Work? The Mechanics Explained
How do URL shorteners work? Store a slug-to-destination mapping, look up the key on each click, return an HTTP redirect. The mechanics, end to end
12 min de citithow do url shorteners work · url shortener mechanics · 301 vs 302 redirect - Inginerie
Shipping the TinyURL migration: Pro/Bulk REST, no free tier
How we built one-click TinyURL Pro/Bulk imports for Elido - why public TinyURL has no API, the alias-vs-slug terminology, and the limit we shipped on purpose.
6 min de citittinyurl migration · url shortener · go worker - Inginerie
Shipping the Short.io migration: per-domain pagination
How we built one-click Short.io imports for Elido: the per-domain pagination model, the deactivated-private-link rule, and our fastest migration source.
6 min de cititshort.io migration · url shortener · go worker - Inginerie
Shipping the Rebrandly migration worker
How we built one-click Rebrandly imports for Elido: the 25-per-page pagination, the optional workspace filter, conflict strategies, and what we don't migrate.
6 min de cititrebrandly migration · url shortener · go worker - Inginerie
Shipping the Dub.co migration: folders flatten into tags
How we built one-click Dub.co imports for Elido: the cleanest API of the five vendors, folder-to-tag flattening, and the EU-residency side-grade.
7 min de cititdub.co migration · url shortener · go worker - Inginerie
Fire-and-forget click ingestion with Redpanda
How edge POPs emit click events without blocking the redirect, how the click-ingester worker batches into ClickHouse, and what we trade away for the latency win
11 min de cititfire and forget click ingestion · redpanda click events · clickhouse batch insert - Inginerie
Edge POPs vs DNS-only routing: the latency budget tradeoff
Why DNS-based load balancing tops out near 50ms p50 and what an anycast edge POP gives you below it, with four numbers that decide which fits your URL shortener
9 min de cititedge pop vs dns · anycast vs dns failover · edge routing latency - Inginerie
Cache strategy for URL redirects: L1 LRU and L2 Redis
How a two-tier cache keeps p95 redirect latency under 15ms: the L1 LRU eviction policy, the Redis warming strategy, and failure modes we have seen in production
13 min de cititurl redirect cache · ristretto lru · redis cluster - Articol de bazăInginerie
Sentry/GlitchTip across 12 Go services on the hot path
How Elido shipped a shared sentryinit package giving every Go service the same panic + 5xx auto-capture, staying zero-alloc on edge-redirect's hot path.
13 min de cititsentry go middleware · glitchtip self-hosted · observability url shortener - Inginerie
Why we use ClickHouse for click analytics (and not Postgres)
The workload is 100M+ events/month, write-heavy, analytical-query-shaped. Why columnar wins, the schema we ship, and what we hit at 90 days of Postgres
13 min de cititclickhouse click analytics · clickhouse for analytics · click event storage - Articol de bazăInginerie
Hitting p95 < 15ms for redirects from FRA, ASH, and SGP
How Elido's edge-redirect path holds a 15ms p95 budget on cache HIT across three regions - architecture, cache strategy, real-region measurements
15 min de cititurl shortener performance · edge redirect latency · multi-region url shortener - Articol de bazăInginerie
Self-hosting Elido on k3s - a complete playbook
A step-by-step guide to deploying the full Elido stack on k3s: Helm bootstrap, 14 services, StatefulSet data plane, Caddy on-demand TLS, backups, and upgrades.
13 min de cititself hosted url shortener · k3s · kubernetes url shortener - Articol de bazăInginerie
Manage your short links as Terraform with terraform-provider-elido
terraform-provider-elido is the only Terraform provider in the URL-shortener space. How the link lifecycle and drift detection work, plus v0.1.0 trade-offs.
13 min de cititterraform · infrastructure as code · url shortener - Inginerie
Shipping the Bitly migration: one worker, four caps
How we built one-click Bitly imports for Elido - the worker design, the conflict-resolution rules, and the four caps that keep an in-process goroutine safe.
8 min de cititbitly migration · url shortener · go worker