Bonjour à tous,
voilà j'aimerai savoir quels sont les process utilisés par twitter, facebook et autres pour qu'un utilisateur reçoivent les infos publiés par un des ses amis ou un de ceux auxquels il est abonné.
Je m'explique: j'ai réalisé une application mobile qui produit des images (ça pourrait être du texte), pour l'instant l'appli permet de les partager sur twitter, facebook, etc...
J'aimerais pouvoir améliorer l'appli pour que les images soit directement visible sur celle-ci. Ainsi les images produites par ses amis seraient visible sur une sorte de mur consultable sur l'application elle-même. Beaucoup d'applications font cela, face, twitter, instagram....
Ma question est donc comment diffuser une image produite par un utilisateur (et stocker sur mon serveur) à tous ces abonnés/ amis ?
J'arrive à conceptualiser la chose pour la diffuser à tout le monde: on lit dans une table prévues à cet effet les dernières images publiés par tout les utilisateurs, mais pour diffuser certaines images à certains individus ?
Dans mon esprit, toutes les images doivent être inscrites dans une table spécifiques avec l'id de celui les publiant, puis l'utilisateur à sa connexion lance une requête sur cette table avec comme condition where une liste d'id correspondant à ces amis...
Genre => SELECT image_id FROM table_image WHERE membre_id IN (liste_ami) LIMIT 10;
Avec cette sous requête => SELECT ami_id FROM table_ami WHERE membre_id=user_id;
je peux déduire list_ami
Le problème est que même en indexant tout bien, cela semble devenir une vrai usine à gaz dès qu'il y a plusieurs centaines d'utilisateurs simultanés avec des centaines d'amis chacun !!
Vous pensez que ces applications travaillent de cette façon ??
En attendant vos avis,
merci d'avance
voilà j'aimerai savoir quels sont les process utilisés par twitter, facebook et autres pour qu'un utilisateur reçoivent les infos publiés par un des ses amis ou un de ceux auxquels il est abonné.
Je m'explique: j'ai réalisé une application mobile qui produit des images (ça pourrait être du texte), pour l'instant l'appli permet de les partager sur twitter, facebook, etc...
J'aimerais pouvoir améliorer l'appli pour que les images soit directement visible sur celle-ci. Ainsi les images produites par ses amis seraient visible sur une sorte de mur consultable sur l'application elle-même. Beaucoup d'applications font cela, face, twitter, instagram....
Ma question est donc comment diffuser une image produite par un utilisateur (et stocker sur mon serveur) à tous ces abonnés/ amis ?
J'arrive à conceptualiser la chose pour la diffuser à tout le monde: on lit dans une table prévues à cet effet les dernières images publiés par tout les utilisateurs, mais pour diffuser certaines images à certains individus ?
Dans mon esprit, toutes les images doivent être inscrites dans une table spécifiques avec l'id de celui les publiant, puis l'utilisateur à sa connexion lance une requête sur cette table avec comme condition where une liste d'id correspondant à ces amis...
Genre => SELECT image_id FROM table_image WHERE membre_id IN (liste_ami) LIMIT 10;
Avec cette sous requête => SELECT ami_id FROM table_ami WHERE membre_id=user_id;
je peux déduire list_ami
Le problème est que même en indexant tout bien, cela semble devenir une vrai usine à gaz dès qu'il y a plusieurs centaines d'utilisateurs simultanés avec des centaines d'amis chacun !!
Vous pensez que ces applications travaillent de cette façon ??
En attendant vos avis,
merci d'avance