tmux-cli is a command-line tool for controlling CLI applications running in tmux panes and windows. It automatically detects whether you are inside or outside tmux and uses the appropriate mode. Read more ›
TL;DR: GraphQL can't be cached by URL like REST. Cache by query + variables, layer your caches (client → edge → app → persisted queries), match TTLs to data volatility, and invalidate via webhooks. Never cache carts or customer-specific pricing. The Core Problem REST caching is URL-based. One endpoint = one cache entry. Easy. GraphQL uses a single endpoint for everything. The query body defines the response, so two requests to the same URL can return totally different data. URL-based caching ... Read more ›
pg_hardstorage — enterprise-grade PostgreSQL backup: continuous WAL streaming + base backups, single static Go binary, PostgreSQL 15–18, Apache 2.0. - cybertec-postgresql/pg_hardstorage Read more ›
As someone who’s been maintaining Jaeger, I’ve watched users request ClickHouse support consistently over the past few years. With Jaeger v2.18.0, we’ve finally delivered it. What excites me most isn’t just that ClickHouse is available—it’s that its architecture is... Read more ›
Nutritionists warn this marketing tactic gives products a ‘health halo’ effect and many of these foods aren’t necessarily healthier Read more ›
PostgreSQL was once primarily deployed on dedicated servers and virtual machines, and now runs across managed database services, Kubernetes platforms, cloud environments, hybrid infrastructures, and everything in between. Many organizations operate several of these models simultaneously, often while supporting growing data volumes and increasingly demanding recovery requirements. As PostgreSQL deployments have evolved, so have the conversations surrounding backup and recovery. At CYBERTEC, th... Read more ›
Linear probing is one of the simplest and most space-efficient approaches to hash table design, and is widely used in sequential settings due to its compact memory layout. However, designing a concurrent linear-probing hash table with strong liveness guarantees has proved difficult, and only a handful of such algorithms have been proposed, all of which either restrict concurrency or rely on large per-entry metadata, thereby compromising space ef... Read more ›
Executive Summary: To eliminate race conditions in a high-concurrency ticketing system, I implemented PostgreSQL's FOR UPDATE clause for row-level database locking alongside Go worker channels for in-memory queue serialization. This approach completely prevents inventory over-selling by guaranteeing singular data mutation execution even under flash-sale load. If you have ever built an application that handles live event ticketing, flash sales, or limited-inventory drops, you know the dread of... Read more ›
Courage, one of the four cardinal virtues of Stoicism, is what I consider the fuel for virtue, and really for living a good life. But what does courage actually look like? Are we born courageous or it it something we can develop? In today’s episode we’re going to dive into what Stoics taught about courage and how it’s backed up by modern science. "Courage is not simply one of the virtues, but the form of every virtue at the testing point." —C.S. Lewis Read more ›
Java issues on AWS are often misdiagnosed as infrastructure problems. Here’s why the JVM belongs in every architecture review. The post appeared first on . Read more ›
Distributed systems look simple on whiteboards. Read more ›
From entities and value objects all the way to Sagas, CQRS, and Event Sourcing, explained with a single running example. Read more ›
In this post, we show you how to use Amazon CloudWatch Database Insights for lock analysis in Amazon Aurora PostgreSQL. You learn how to enable the feature, interpret lock tree visualizations, resolve common lock-related issues, and maintain optimal database performance. This lock tree analysis feature also applies to Amazon RDS for PostgreSQL. Read more ›
A complete guide to setting up a self-hosted observability stack using Prometheus, Node Exporter, and Grafana on an Ubuntu 24.04 bare-metal dedicated server. Read more ›
Modern distributed systems often require long-running business processes that span multiple microservices, databases, and external systems. Read more ›
Recently I have worked on cases where it is observed that data sync fails with deadlock error. Error: Database re-provisioning failed with the exception 'Transaction (Process ID ##) was deadlocked on lock resources with another process and has been chosen as the deadlock victim. Rerun the transaction. To investigate deadlocks, you can enable Extended Events by following the guidance provided here: A Sample deadlock graph looks below: Running the Data Sync Health Checker report also results in... Read more ›
Rails gave web developers a durable caching model. Cache the outer fragment. Reuse the inner fragments that did not change. The Rails caching guide calls this Russian doll caching. You Can Use Russian Doll Caching at the Edge. The same idea now applies outside the template. The dolls can span the browser cache, CloudFront, the […] The post appeared first on . Read more ›
The decision between Go and Rust. The queue depth graph looked wrong. Read more ›
🚀 Create Quick Nest A Quick Setup for NestJS 11 + Prisma 7 + PostgreSQL backend in seconds. The fastest way to start a NestJS + Prisma database project. Skip boilerplate, skip setup start building real features in minutes. Create your project instantly: bunx quick-nest my-app # or npx quick-nest my-app npm/bun pacakge : Your NestJS + Prisma database is ready to go. ✨ Features 🏗️ NestJS 11 — Modern, opinionated Node.js framework 🗄️ Prisma ORM v7 — Type-safe PostgreSQL ORM with auto-migrations ... Read more ›
“You're seeing protein capitalism at play,” David Protein CEO Peter Rahal said. Read more ›