Open BorisDjoum opened 5 months ago
j'ai d'importantes questions
qu'es ce qu'on entend par REACTIONS ? Parceque la j'ai l'impression que c'est juste des emojis
Oui c'est juste les emojis.
Je vais commencer à rédiger le Readme
Je résume les réactions comme suit :
Je travaille sur les commentaires.
Du coup notre microservice est implémenté en utilisant Python et Flask pour créer l' API
Avec @agonglomarel7, nous avons discuté avec le professeur et nous sommes convenus qu’un tel service bénéficierait d’une base de données NoSQL, comme Redis. Cette solution semble plus adaptée en raison de sa capacité à gérer efficacement les données en temps réel et à offrir des performances élevées pour les opérations fréquentes et rapides. Y a-t-il des commentaires à ce sujet ? Nous sommes ouverts à toute suggestion ou retour.
Avec le groupe de tweet, nous avons établi qu'ils se concentreraient sur la gestion des retweets. De notre côté, nous allons nous occuper du volet "réactions", qui inclut :
Gestion des Commentaires : Développement d'une fonctionnalité permettant aux utilisateurs de commenter les tweets, avec un système de hiérarchisation ou de fil de discussion.
Suivi des Émotions (Reactions Emojis) : Ajout de réactions basées sur des emojis pour exprimer différentes émotions ou sentiments envers un tweet ou un commentaire.
Des commentaires ????
si je comprends bien , on doit juste s'occuper des informations a envoyer au frontend (cercle en rouge) et de ceux que le frontend doit nous envoyer ( en bleu ) cest ca?
Oui, mais on doit également pouvoir stocker qui a liké ou qui a commenté.
Ceci est ma proposition concernant l'architecture de notre microservice.
Structure du schéma
Frontend (Interface Utilisateur) Fonction : L'utilisateur interagit avec l'interface pour liker et commenter des tweets. Les requêtes HTTP sont envoyées au microservice "Gestion des Réactions".
Microservice "Gestion des Réactions"
Fonction : Ce microservice gère les likes et les commentaires. Il reçoit les requêtes HTTP de l'interface utilisateur et interagit avec Redis pour stocker les informations des réactions. Routes principales : Indiquez les routes principales sous forme de texte à côté du microservice (par exemple, POST /like, POST /comment, GET /likes/{tweet_id}, GET /comments/{tweet_id}).
Redis
Fonction : Redis stocke les informations des likes et des commentaires. Vous pouvez avoir deux bases de données distinctes dans Redis : Une pour les likes (clé like:{tweet_id}, valeur [user1, user2, user3]). Une pour les commentaires (clé comment:{tweet_id}, valeur [{"user": "user1", "comment": "Nice tweet!"}, {"user": "user2", "comment": "I agree!"}]).
Microservice "Gestion des Tweets"
Fonction : Ce microservice gère les tweets eux-mêmes. Il permet de récupérer un tweet à commenter ou liker. Ce microservice interagit avec le microservice "Gestion des Réactions" pour gérer les interactions sur les tweets.
Microservice "Gestion des Profils Utilisateurs"
Fonction : Ce microservice gère les profils des utilisateurs. Lorsqu'un utilisateur like ou commente un tweet, son profil peut être mis à jour ou vérifié.
Ajouter des fonctionnalités avancées pour répondre aux besoins évolutifs :
Réactions Emoji Personnalisées :
POST /emoji
).Signalement des Réactions ou Commentaires :
POST /report
pour signaler les réactions ou commentaires inappropriés.reported:{reaction_or_comment_id}
).Améliorer la gestion des données et leur récupération :
Pagination des Commentaires :
comment:{tweet_id}
).ZRANGEBYSCORE
).Suivi des Réactions Par Utilisateur :
user:{user_id}:reactions
.Assurer un contrôle strict des données :
Détection des Réactions Multiples :
like:{tweet_id}:users
) pour vérifier si un utilisateur a déjà réagi.Authentification et Autorisation :
POST /like
: Ajouter une réaction à un tweet.DELETE /like
: Retirer une réaction.POST /comment
: Ajouter un commentaire.GET /comments/{tweet_id}
: Obtenir tous les commentaires avec pagination.GET /likes/{tweet_id}
: Récupérer les utilisateurs ayant liké un tweet.POST /report
: Signaler un contenu.
Discutons sur le schema de l'api reaction : @Johanu66 , @agonglomarel7 , @Anna-Rafaella , @fodouopn