Server Timing sur tous les points de terminaison

created: dimanche, mai 7, 2023

Puisque nous ne pouvons améliorer que ce que nous mesurons, nous avons commencé à implémenter l’API Server Timing sur tous les endpoints HTTP.

L’API fournit des moyens simples d’étendre l’en-tête http avec quelques mesures de performance.

Pour une introduction générale au sujet, vous pouvez consulter la documentation Mozilla à ce sujet (https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Server-Timing).

Pour l’implémentation concrète, nous utilisons l’implémentation Rust suivante, qui nous fournit des données de performance pour le serveur axum prêtes à l’emploi, (https://crates.io/crates/axum-server-timing).

Parce que notre architecture s’étend sur plusieurs centres de données, nous ne publions pas ces métriques comme une seule mesure. Nous avons adopté une approche en couches pour notre réseau.

réseau en couches

Here are some sample headers produced by our API.

server-timing: dtz-red;dur=765, dtz-blue;desc="dtz-blue(warm)";dur=538
content-length: 19276864
last-modified: Sun, 07 May 2023 10:25:33 GMT
date: Sun, 07 May 2023 10:27:52 GMT
content-type: application/octet-stream

temporisation API conteneur