redis - 新浪微博里的共同好友的查找是如何实现的
伊谢尔伦
伊谢尔伦 2017-04-21 11:16:41
0
3
1319

今天看了一个老视频:http://v.youku.com/v_show/id_XMzM3NjgzMjY4.html
里面说到这个问题“A关注了B,B也关注A,要得到两个人的共同好友,好友取交集。如果A是一个粉丝有3000万的大V,而B是粉丝只有1000的屌丝,要找出他们的共同好友,应该怎么做?”
视频看完了,我却米有找到答案。大家帮忙分析下。

首先得是redis,第二,得合理,不能用户查看的时候等待个四五秒。

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

répondre à tous(3)
大家讲道理

Ce processus de calcul n'est pas une opération http unique et il ne peut pas être calculé immédiatement, à moins qu'il n'y ait des ingénieurs en algorithmes et des ingénieurs de données NB.
Ces éléments sont calculés lentement en arrière-plan. Sinon, sur quoi s'appuient les ingénieurs d'exploration de données? Lorsque les résultats calculés seront calculés, ils commenceront à vous présenter les avantages de l'utilisation d'un langage statique et de la mémoire résidente. le côté serveur peut être reflété.

伊谢尔伦

Après avoir regardé la vidéo, c'était clairement indiqué : pré-calcul. (Commencez à regarder à 10 minutes et 30 secondes)
Calculez-le simplement lorsque vous y prêtez attention (en insérant des données).

巴扎黑

Il est facile d’utiliser les ensembles Redis.
Exemple :
user:1:fans [2,3,4] //Fans suivant l'utilisateur 1
utilisateur : 1 : suit [2,5,7,8] // L'utilisateur 1 suit

user:2:fans [1,3,4] //Suivez les utilisateurs 2
user:2:suit [1,7,8] //

suivi de l'utilisateur 2

Lorsque l'utilisateur 1 se connecte, si vous pouvez obtenir la relation d'ami en prenant l'intersection de l'utilisateur : 1 : fans et de l'utilisateur : 1 : suivre, alors prenez l'intersection de l'utilisateur : 1 : suit et de l'utilisateur : 2 : suit, est-ce que ça fonctionnera ? Des utilisateurs qui peuvent attirer l’attention commune ? Je crois que je n'ai pas besoin de vous raconter le reste des différences d'intersection, vous devriez le savoir aussi

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal