Skip to main content

Practical DevOps, Cloud, AI & Linux engineering guides

Featured Article

GitLab's New Rate Limits: What to Fix Before Oct 19

GitLab is capping unauthenticated API calls at 60 an hour starting October 19, and the preview windows land before most teams will have noticed.

KU
Kiril UrbonasAI Engineer
|Oct 4, 2026
GitLab's New Rate Limits: What to Fix Before Oct 19

Most read

  1. 01
  2. 02
  3. 03
  4. 04
  5. 05

Topics

Latest Articles

View All →
A practical guide to the signals that justify a message queue, the costs it adds, and a checklist for deciding.
••last month

When to Use a Message Queue (and When Not To)

A practical guide to the signals that justify a message queue, the costs it adds, and a checklist for deciding.

KU
Kiril Urbonas·2 min read·26
Read article
A practical guide to dead-letter queues, the pattern that isolates poison messages so one bad payload can't stall your whole pipeline.
••last month

Dead-Letter Queues: Handling Messages That Won't Process

A practical guide to dead-letter queues, the pattern that isolates poison messages so one bad payload can't stall your whole pipeline.

KU
Kiril Urbonas·2 min read·56
Read article
Exactly-once network delivery is impossible, but exactly-once processing is achievable through at-least-once delivery plus idempotent consumers.
••last month

Exactly-Once Delivery: Myth, Reality, and What to Do Instead

Exactly-once network delivery is impossible, but exactly-once processing is achievable through at-least-once delivery plus idempotent consumers.

KU
Kiril Urbonas·2 min read·24
Read article
A practical guide to publish-subscribe messaging, covering topics, fan-out, delivery guarantees, durable subscriptions, and the real systems that power it.
••last month

Pub/Sub Explained: How Publish-Subscribe Messaging Works

A practical guide to publish-subscribe messaging, covering topics, fan-out, delivery guarantees, durable subscriptions, and the real systems that power it.

KU
Kiril Urbonas·3 min read·32
Read article
A practical tour of the message queue patterns that keep distributed backends decoupled, resilient, and able to survive traffic spikes.
••last month

Message Queue Patterns Every Backend Engineer Should Know

A practical tour of the message queue patterns that keep distributed backends decoupled, resilient, and able to survive traffic spikes.

KU
Kiril Urbonas·3 min read·19
Read article
Synchronous calls couple your services together and fail together. Events let systems react instead of ask. This is the map: the patterns, the messaging tools, and the delivery guarantees that make it work.
••last month

Event-Driven Architecture — The Complete Guide

Synchronous calls couple your services together and fail together. Events let systems react instead of ask. This is the map: the patterns, the messaging tools, and the delivery guarantees that make it work.

KU
Kiril Urbonas·2 min read·11
Read article
Kafka and RabbitMQ both move messages, but they solve different problems, and picking the wrong one shows up in your on-call rotation later.
••last month

Kafka vs RabbitMQ: How to Choose in 2026

Kafka and RabbitMQ both move messages, but they solve different problems, and picking the wrong one shows up in your on-call rotation later.

KU
Kiril Urbonas·2 min read·34
Read article
A good API is a promise you can keep for years. This is the map: the conventions, the protocols, and the details that make an API pleasant to use and safe to change.
••last month

API Design Best Practices — The Complete Guide

A good API is a promise you can keep for years. This is the map: the conventions, the protocols, and the details that make an API pleasant to use and safe to change.

KU
Kiril Urbonas·1 min read·15
Read article
Offset pagination is easy until your dataset grows or shifts under load; here's why cursor pagination wins for large, changing, and public APIs.
••last month

API Pagination: Offset vs Cursor (and When to Use Each)

Offset pagination is easy until your dataset grows or shifts under load; here's why cursor pagination wins for large, changing, and public APIs.

KU
Kiril Urbonas·2 min read·19
Read article
A practitioner's guide to rate limiting algorithms, where to enforce them, and how to make them work across many instances with Redis.
••last month

API Rate Limiting: Algorithms and How to Implement It

A practitioner's guide to rate limiting algorithms, where to enforce them, and how to make them work across many instances with Redis.

KU
Kiril Urbonas·2 min read·22
Read article
A practical look at REST and GraphQL versioning, breaking changes, deprecation policy, and the pragmatic default we actually reach for.
••last month

API Versioning Strategies (and How to Avoid Breaking Clients)

A practical look at REST and GraphQL versioning, breaking changes, deprecation policy, and the pragmatic default we actually reach for.

KU
Kiril Urbonas·2 min read·13
Read article
A practical guide to choosing between GraphQL and REST based on how your clients fetch data, cache, and evolve over time.
••2 months ago

GraphQL vs REST: When to Use Each in 2026

A practical guide to choosing between GraphQL and REST based on how your clients fetch data, cache, and evolve over time.

KU
Kiril Urbonas·2 min read·19
Read article
Page 6 of 47 · 559 posts