Gedanken
Technische Artikel und Einblicke zu Engineering, KI und Softwarearchitektur.
Ihr Agent braucht nicht das ganze Internet: Egress-Kontrolle und Berechtigungen auf AWS
Wie Sie auf AWS begrenzen, was ein KI-Agent erreichen und tun darf: Domain-Allowlists mit Network Firewall, Grenzen von DNS-Filtern, eine IAM-Rolle pro Agent, Freigaben, Kill-Switch.
Fargate vs. App Runner: dieselbe App, zweimal durchgerechnet
Fargate vs. App Runner für dieselbe Next.js-App berechnet: Listenpreise, ALB, öffentliche IPv4 und NAT inklusive, plus der Punkt, an dem Fargate gewinnt.
Wie wir Cloud und DevOps bauen: drei Konten, eine CDK-Codebasis, und kein Cluster
Wir betreiben AWS für unsere eigenen Produkte und für eine Kundenplattform mit echten Nutzern und echtem Geld, das hindurchfließt.
Infrastructure as Code heißt nicht Terraform. CDK, Pulumi und die Frage, die wirklich entscheidet
Irgendwann um 2019 wurde „Infrastructure as Code“ in den meisten Gesprächen zum Synonym für Terraform, so wie „Suche“ Google bedeutet.
Queues ohne Kafka: SQS, EventBridge und die eine Stelle, an der wir wirklich einen Stream brauchten
Jede Plattform erreicht den Moment, in dem eine Anfrage zu viel tut. Der Checkout-Handler verschickt eine E-Mail, aktualisiert den Suchindex, benachrichtigt…
Rate Limiting: am Rand, im Gateway oder in der App? Drei Schichten, drei Aufgaben
„Rate Limiting hinzufügen“ ist ein Einzeiler-Ticket, das drei verschiedene Probleme verbirgt.
Health Checks, die lügen: sechs Arten, wie Ihr Dienst „bereit“ sagt, wenn er es nicht ist
Ein Health Check ist ein Vertrag zwischen Ihrer Anwendung und dem, was ihr Traffic zuweist.
Backups, die Sie nie wiederhergestellt haben, sind keine Backups. Eine Restore-Übung, gestoppt.
Jeder AWS-Datenspeicher hat Backups standardmäßig oder per Häkchen aktiviert. Aurora hält automatische Backups. DynamoDB hat Point-in-Time-Recovery.
Ein Incident-Runbook für ein Team ohne Bereitschaftsdienst
Große Unternehmen haben On-Call-Rotationen, Incident Commander, Schweregradmatrizen und ein passendes Tooling-Budget.
Das Datenbankpasswort ohne Ausfall rotieren: das, was Sie schon lange aufschieben
Alle sind sich einig, dass das Datenbankpasswort rotieren sollte. Bei fast niemandem tut es das, und der Grund ist nicht Faulheit.
WAF für eine Next.js-App: die Managed Rules, die legitimen Traffic blockieren, und was wir dagegen getan haben
AWS WAF vor einer Webanwendung einzuschalten ist ein CDK-Construct und eine Handvoll Häkchen bei Managed Rule Groups.
Secrets in CDK: Secrets Manager, Parameter Store, und niemals etwas im Template
Ein CloudFormation-Template ist eine Textdatei. Es wird von CloudFormation gespeichert, liegt in cdk.out auf der Festplatte jedes Entwicklers, steht in den…
Reserved, Savings Plans oder nichts: wann sich ein Einjahres-Commitment im Kleinen tatsächlich lohnt
AWS gibt Ihnen bis zu 72 % Rabatt auf Compute, wenn Sie versprechen, drei Jahre lang weiter dafür zu zahlen.
AWS-NAT-Gateway-Kosten: der teuerste Posten, den Sie nicht sehen
Was kostet ein AWS NAT Gateway pro Monat? $32,85 pro Gateway vor jeglichem Traffic, plus $0,045/GB. Rechenbeispiele, unsere Rechnung und fünf Sparwege.
Zero-Downtime-Deploys sind kein Plattform-Feature. Sie sind eine Disziplin bei Schemamigrationen.
Jede Container-Plattform wird Ihnen sagen, dass sie Zero-Downtime-Deployments beherrscht.
Dev, Staging und Prod vom ersten Tag an: warum ein Dreierteam nicht warten sollte
„Wir trennen die Umgebungen später, wenn wir Nutzer haben.“ Diesen Satz haben wir von jedem kleinen Team gehört, mit dem wir gearbeitet haben, und wir haben…
Sie brauchen kein Kubernetes. Sie brauchen ein gutes Dockerfile und einen Ort, an dem es läuft.
Alle paar Monate fragt uns ein Team von drei bis fünf Engineers, ob es auf Kubernetes umziehen sollte.
Was verwaltete Observability bei 100 GB am Tag wirklich kostet: Datadog, Grafana Cloud, selbst gehostet
Die Observability-Rechnung ist die, die zweimal überrascht. Das erste Mal, wenn sie eintrifft und ein Drittel der Compute-Rechnung ausmacht.
Alarme, die nicht wissen, in welcher Cloud sie laufen
Jede Cloud verkauft Ihnen Alarme. CloudWatch Alarms, Azure-Monitor-Alarmregeln, Cloud-Monitoring-Alerting-Policies: jeder ist vorkonfiguriert, jeder ist ein…
Auch Ihre Traces sollten nicht wissen, in welcher Cloud sie laufen
Wir haben dargelegt, dass Anwendungslogs nicht der Cloud gehören sollten: die App emittiert, ein Agent stempelt die Cloud darauf, ein neutrales Backend…
Gleiches Tag, kein Deploy: warum cdk deploy mit unverändertem Image nichts tut, und das 300-Zeilen-Skript, das wir darum herum geschrieben haben
Zwei Geschichten über dieselbe Deploy-Pipeline, gemeinsam erzählt, weil die zweite wegen der ersten existiert.
CloudWatch Data Protection Policies: PII maskieren, bevor sie in Ihren Logs landen
Ein Support-Engineer bat um ein Debug-Log auf einer API-Route, „nur für eine Woche“, um einem Bug in der Adressvalidierung nachzujagen.
Aurora Serverless v2 nach sechs Monaten: die 0,5-ACU-Untergrenze und der Auto-Pause-Mythos
Aurora Serverless v2 wird mit einem Satz verkauft: zahlen Sie für die Datenbankkapazität, die Sie nutzen, skaliert in Sekundenbruchteilen.
Das 500-Ressourcen-Limit von CloudFormation, und wie wir einen Stack ohne Datenverlust aufgeteilt haben
CloudFormation-Limit von 500 Ressourcen erreicht? So haben wir einen CDK-Stack ohne Datenverlust geteilt: stateless verschieben, stateful importieren, Fallen.