Je ne vais pas parler de machineries lourdes, parce que j'imagine que pour une application vinicole, il n'y a pas un flux de données gigantesque (mais peut-être que je me trompe).
J'imagine que ton scénario, c'est un capteur de température relié à un GPIO de ton RPI. Tu multiplies cette configuration par autant d'exploitations vinicoles que tu veux.
Puis tu as un serveur central vers lequel chaque RPI va envoyer une mesure dès qu'elle est disponible. Sur le serveur, tu as une moulinette pour faire tes calculs, tu sauvegardes les mesures, leur origine, les résultats associés et tu envoies tout ça sur une page web en temps réel.
Voilà pour le scénario.
Pour une solution pas trop compliquée, je vois ça:
- côté RPI, un client python qui va lire la mesure et va faire une requête PUT classique vers ton serveur avec la mesure. Rien de bien méchant.
- côté serveur du Django classique avec une app REST. L'app REST va recevoir ta requête, va la mouliner et va la sauvegarder dans une base de donnée. La partie classique va servir à créer la page web où tes mesures seront affichées.
- côté frontend, tu peux prendre ce que tu veux comme widget pour afficher les données. Pour les recevoir, le mieux c'est de faire du server sent event. Il y a une app Django pour ça. Depuis le frontend tu fais une requete GET vers le serveur. Puis après il te balance des données dès qu'il y a des modifications dans la base de données. Il ne reste plus qu'à les afficher.
[^] # Re: pour l'asynchrone
Posté par Destop . En réponse au journal appli web cooperative viticole. Évalué à 2.
Je ne vais pas parler de machineries lourdes, parce que j'imagine que pour une application vinicole, il n'y a pas un flux de données gigantesque (mais peut-être que je me trompe).
J'imagine que ton scénario, c'est un capteur de température relié à un GPIO de ton RPI. Tu multiplies cette configuration par autant d'exploitations vinicoles que tu veux.
Puis tu as un serveur central vers lequel chaque RPI va envoyer une mesure dès qu'elle est disponible. Sur le serveur, tu as une moulinette pour faire tes calculs, tu sauvegardes les mesures, leur origine, les résultats associés et tu envoies tout ça sur une page web en temps réel.
Voilà pour le scénario.
Pour une solution pas trop compliquée, je vois ça:
- côté RPI, un client python qui va lire la mesure et va faire une requête PUT classique vers ton serveur avec la mesure. Rien de bien méchant.
- côté serveur du Django classique avec une app REST. L'app REST va recevoir ta requête, va la mouliner et va la sauvegarder dans une base de donnée. La partie classique va servir à créer la page web où tes mesures seront affichées.
- côté frontend, tu peux prendre ce que tu veux comme widget pour afficher les données. Pour les recevoir, le mieux c'est de faire du server sent event. Il y a une app Django pour ça. Depuis le frontend tu fais une requete GET vers le serveur. Puis après il te balance des données dès qu'il y a des modifications dans la base de données. Il ne reste plus qu'à les afficher.