Articles

A code-level walkthrough of running Bucket4j rate limiting on top of embedded Infinispan. It traces how InfinispanProxyManager wraps a Bucket4j RemoteCommand into a SerializableFunction that runs as an AbstractBinaryTransaction on the primary node, deserializing RemoteBucketState, applying tryConsume, and writing the result back with a MetaLifespan TTL under atomic CAS evaluation. It rounds out with the protostream context initializer and the bytecode/version-homogeneity constraints you need to get it working.

A production look at building an API gateway on Vert.x and the performance contract that comes with it. The Router handler pipeline chains stages through routingContext.next(), short-circuiting on auth or validation failure, while blockingHandler keeps slow work off the event loop. The piece treats handler ordering as a security property and digs into worker-pool exhaustion tuning and the fail-open vs fail-closed call when a downstream key/auth service times out, all grounded in real profiling.

Building a multi-cloud API gateway from the ground up, with the failure modes spelled out. A Go control plane watches versioned JSON route configs in Redis and serves them to Envoy over xDS, shifting traffic weights when backend error rates cross a threshold. The hard-won lessons are the good part: rate limiting silently fails open when the gRPC limiter is unreachable, a Redis restart can hand Envoy empty clusters (fixed with in-memory plus disk read-through), and OTLP exporters drop spans without retry_on_failure and a sending queue.