Skip to content

nfrankel/nfrankel

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 

Repository files navigation

ℹ️

last updated 2024.05 This profile is automatically generated.

If you’re interested in knowing more, please check the code.

Developer Advocate with 15+ years experience consulting for many different customers, in a wide range of contexts (such as telecoms, banking, insurances, large retail and public sector). Usually working on Java/Java EE and Spring technologies, but with focused interests like Rich Internet Applications, Testing, CI/CD and DevOps. Also double as a trainer and triples as a book author.

✍️ Most recent blog posts

The Vary HTTP header (2024-05-05)

I try to constantly deepen my knowledge of HTTP and REST. Recently, I stumbled upon the list of all registered HTTP Headers. This post is dedicated to the Vary HTTP Header. The problem Two years ago, I wrote about web resource caching server-side. The idea is to set up a component between the client and the upstream to cache previously computed results to avoid overloading the latter. Depending on your infrastructure and requirements, this component can be a reverse proxy or an API Gateway. H[…​]

Five ways to pass parameters to Apache APISIX (2024-04-28)

I recently read 6 Ways To Pass Parameters to Spring REST API. Though the title is a bit misleading, as it’s unrelated to REST, it does an excellent job listing all ways to send parameters to a Spring application. I want to do the same for Apache APISIX; it’s beneficial when you write a custom plugin. General setup The general setup uses Docker Compose and static configuration. I’ll have one plugin per way to pass parameters. docker-compose.yml services: httpbin: ima[…​]

The try block in Rust (2024-04-21)

I wrote previously about libs for error management in Rust. This week, I want to write about the try block, an experimental feature. The limit of the ? operator Please check the above article for a complete refresher on error management in general and the ? operator in particular. In short, ? allows to hook into a function call that returns a Result: If the Result contains a value, it continues normallyIf it contains an error, it short-circuits and returns the Result to the calling function.[…​]

🗣️ Upcoming talks

Evolving your APIs, a step-by-step approach @ JCON

When you publish your first HTTP API, you’re more focused on short-term issues than planning for the future. However, chances are you’ll be successful, and you’ll hit the wall. How do you evolve your API without breaking the contract with your existing users? In this talk, I’ll first show you some tips and tricks to achieve that: moving your endpoints, deprecating them, monitoring who’s using them, and letting users know about the new endpoints. The talk is demo-based, and I’ll use the Apache APISIX project for it.

The right feature at the right place: the example of authorization @ Community over Code

All mature tech stacks nowadays offer infrastructure-related capabilities, either a standard lib or in 3rd-party libraries, e.g., rate-limiting and authorization. While it’s great to have such features, it’s impossible to audit them easily. You’d need to be familiar with the stack and dive deep into the code. This approach just doesn’t scale, A well-designed system keeps the right feature at the right place. In this talk, I’ll go through all steps toward making your system more easily auditable. I’ll use the authorization of a security policy as an example and start from a regular Spring Boot project with Spring Security. I’ll then move step-by-step, introducing the Open Policy Agent (OPA) and the Apache APISIX API Gateway. The end result will have moved all authorization details buried in the code in a readable accessible place.

Faire évoluer vos APIs HTTP, une approche pas-à-pas @ DevFest Lille

Lorsque vous publiez votre première API HTTP, vous avez tendance à vous concentrer davantage sur les problématiques à court terme que sur l’avenir. Cependant, il y a des chances que votre application rencontre du succès. La question se pose alors : comment faire évoluer votre API sans rompre le contrat avec vos utilisateurs existants ? Dans cette présentation, je vous montrerai quelques trucs et astuces pour y parvenir : déplacer vos points de terminaison, les déprécier, surveiller qui les utilise et informer les utilisateurs des nouveaux points de terminaison. La présentation est basée sur une démo et j’utiliserai le projet Apache APISIX pour cela.

🎥 Latest video recording

Latest video recording
Evolving your APIs, a step-by-step approache - FOSDEM 2024

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published