Categories

Architecture

Hybrid RAG in 2026: the patterns that keep winning

Hybrid RAG in 2026 combines dense and lexical search fused with RRF, cross-encoder reranking over the top-50 candidates, structure-aware chunking, and continuous evaluation with Ragas or TruLens. It is the pattern that survives in serious production systems three years after the initial embeddings boom.

Architecture

Enterprise GraphRAG: patterns after a year of adoption

A year after GraphRAG left the lab, one statistic holds: it works where corporate information has dense relational structure, fails where there are only loose documents. Patterns, ingestion costs, and architectural decisions that have survived a year of real deployment.

Architecture

Citus: scaling Postgres horizontally without leaving it

Citus is a Postgres extension that spreads tables across worker nodes while the cluster still looks like a single Postgres server to your application. The coordinator intercepts query planning and distributes the work. Picking the distribution key is the decision that matters most, since every later query inherits its consequences.

Architecture

SQLite in production: patterns that have aged well

SQLite in production is a sound choice for small and mid-sized web applications once WAL mode is enabled, since concurrency on typical web loads improves by roughly two orders of magnitude. Litestream streams the WAL to S3-compatible object storage for point-in-time restore, and NVMe disks on cheap VPS plans removed the old disk objection.

Architecture

Agent OS: the concept shaping the new stack layer

The term Agent OS has spent a year gaining traction across research and product circles. It describes a layer that goes well beyond an agent library: request scheduling, context management, persistent memory, and isolation. A look at the real state of that concept.

Architecture

Event-Driven Architecture: When and How to Adopt It

Event-driven architecture decouples services through message brokers. Each component publishes events when something changes, instead of calling other services directly. It reduces coupling and improves resilience. It adds real value in domains with multiple consumers and natural asynchronous processing, but introduces operational complexity worth evaluating before adoption.

Architecture

Redis: Caching Strategies Every Backend Should Know

Redis alone isn't a caching strategy, just an ingredient: picking the right pattern among cache-aside, read-through, write-through, and write-behind, sizing TTL to how fast data actually changes, invalidating explicitly for critical data, and mitigating thundering herd with jitter and locking are the decisions that actually matter in production.

Architecture

Kafka in 2023: Event Streaming in the Enterprise

Apache Kafka has consolidated in 2023 as the enterprise event backbone thanks to KRaft, now GA and removing the ZooKeeper dependency. The most mature patterns are CDC with Debezium, event sourcing, and stream processing with Kafka Streams or Flink, while Redpanda and Pulsar compete as real alternatives depending on the case.

Architecture

RabbitMQ for Message Queues: When It’s Still the Choice

Kafka gets the headlines as the byword for modern messaging, but RabbitMQ remains the better choice for task queues with retries, asynchronous RPC, and pub/sub with complex routing. This guide compares both against NATS, walks through classic patterns and production mistakes, and helps you decide based on the actual use case rather than the trend.