Remarque: Ce projet n'est pas encore pour la consommation générale.
Ce programme fournit une API backend très minimale pour un système d'approvisionnement en événements.
Les principales caractéristiques sont:
Le flux d'événements est un journal uniquement de toutes les modifications apportées aux données structurées de votre application. Le client peut utiliser ce flux d'événements pour créer une projection sur les données structurées, essentiellement l'état de vos données d'application à un moment donné.
Les avantages du stockage de vos données d'application en tant que flux d'événements sont:
Le backend peut être compilé avec un binaire Linux compilé statiquement qui devrait s'exécuter en tant que programme CGI sur la plupart des fournisseurs d'hébergement (sur Linux). Cela nécessite l'installation du gestionnaire de package NIX (afin de construire un binaire qui utilise MUSL au lieu de GLIBC).
Veuillez vous assurer que le serveur Web transmet l'en-tête Authorization (variable d'environnement HTTP_AUTHORIZATION ) au script CGI. Pour Apache, vous pouvez utiliser le cgi-bin/.htaccess fourni.
Le backend peut également s'exécuter autonome à l'aide du serveur HTTP WARP. Veuillez noter cependant que ce n'est pas une implémentation efficace: nous utilisons les verrous de fichiers comme primitives pour la synchronisation.
Le plan consiste à créer un backend de serveur multi-threading efficace à l'aide de STM.
curl -X PUT -H " Content-Type: application/json " --data @event.json http://localhost:8000/events
curl http://localhost:8000/events
curl http://localhost:8000/events ? from=0d0ef6946e84a7bb64c600709c05edda81d2ebec8b85ced529ae56a9de5eb9cb
curl http://localhost:8000/events ? to=0d0ef6946e84a7bb64c600709c05edda81d2ebec8b85ced529ae56a9de5eb9cb
curl http://localhost:8000/events/0d0ef6946e84a7bb64c600709c05edda81d2ebec8b85ced529ae56a9de5eb9cbcurl -X PUT -H " Content-Type: application/pdf " -T ~ /Documents/test.pdf http://localhost:8000/storage/
curl -X GET http://localhost:8000/storage/0d0ef6946e84a7bb64c600709c05edda81d2ebec8b85ced529ae56a9de5eb9cb --output test.pdf
curl -X DELETE http://localhost:8000/storage/0d0ef6946e84a7bb64c600709c05edda81d2ebec8b85ced529ae56a9de5eb9cb