raincious
2015-09-21 14:11:37 +08:00
可能我没理解这个问题。但是这样的静态数据不能用缓存来减少查询么?
比如建立一张表,`user_relation_registerinvitations`,结构就像:
(Primary Key ),
userID int,
inviters char
然后`inviters`里存这个用户的上一级邀请者数组,比如用户 D 的邀请者们是:用户 A,用户 B,用户 C
当有用户 E 通过这个用户 D 的邀请注册的时候,就将这个用户 D 的`inviters`数组读出来放到一个变量里, Shift 出最前的那个用户 A , Push 进用户 D 。然后用变量里的那个新的`inviters`数组为用户 E 建立`人脉表`的数据项,表示他们分别是用户 E 的第 X 级人脉(记得倒过来)。
最后,为用户 E 在`user_relation_registerinvitations`里新建一个项,数据是
`userID` = 用户 E 的 ID
`inviters` = 用户 B,用户 C,用户 D (新的`inviters`数组)
这样当这个用户也要请其他用户注册的时候,就可以延续了。