Devon Burriss' Blog

Mostly just adventures in code.

Reliable APIs - Part 3

The epic saga of client-side IDs and true idempotency Distributed Systems API Design Reliability Idempotent Client-generated ID Social image

The previous post showed how things can go wrong when not thinking through edge cases carefully, especially where concurrency comes into play. In this post we will look at a truly idempotent endpoint design as well as discuss some alternative designs.

Read more

Social image

Reliable APIs - Part 2

Using Idempotency-Key and a response cache

Distributed Systems API Design Reliability Idempotent

Social image

Reliable APIs - Part 1

Exploring reties, retry implications, and the failure modes they are appropriate for

Distributed Systems API Design Reliability

Social image

Capturing custom business metrics in Azure Functions

A Proof-of-concept for scraping Prometheus metrics from Azure Functions

F# Observability Prometheus

Social image

Prometheus Datadog Agent

Setting up a Datadog agent to pull from a Prometheus endpoint

Prometheus Datadog Observability

Social image

Local Prometheus setup

Setting up Prometheus locally with Docker

Prometheus Docker Observability

Social image

The meaning of meditation

A tour of areas that can be improved by skillful application of meditation techniques

Meditation Mindfulness Morality

Social image

Creating a Prometheus parser: Fennel

A quick tour of using FParsec to write a Prometheus parser

F# Prometheus Fennel FsAdvent

Social image

Converting between F# and C# types

Breaking down conversions between C# and F# collections and functions

F# C# Collections

Social image

Reliability with Intents

Telling the world about state changes

Distributed Systems F# Clean Code Architecture Messaging FsAdvent

blog comments powered by Disqus