校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識(shí)庫 > PHP+redis實(shí)現(xiàn)微博的推模型案例分析

PHP+redis實(shí)現(xiàn)微博的推模型案例分析

熱門標(biāo)簽:高德地圖標(biāo)注家 長春人工外呼系統(tǒng)服務(wù)商 廣州防封卡外呼系統(tǒng)多少錢一個(gè)月 仁和怎么申請400開頭的電話 外呼系統(tǒng)撥打暫時(shí)無法接通 怎么向銷售公司推銷外呼系統(tǒng) 廣東地市地圖標(biāo)注 江西手機(jī)自動(dòng)外呼防封系統(tǒng)是什么 哪里辦理400電話

本文實(shí)例講述了PHP+redis實(shí)現(xiàn)微博的推模型。分享給大家供大家參考,具體如下:

最近在看了一下關(guān)于redis的內(nèi)容,然后利用redis寫了一個(gè)簡單的微博項(xiàng)目,這篇文章是關(guān)于推模型的。

推模型

所謂推模型,就是用戶在發(fā)布微博的時(shí)候會(huì)將微博推送給關(guān)注者和自己,然后其他關(guān)注者登錄之后就可以看到發(fā)布的微博。

微博項(xiàng)目數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)

user表設(shè)計(jì)

注冊的時(shí)候?qū)ser數(shù)據(jù)寫入redis中,key如下:

user數(shù)據(jù)的key
用戶名=user:uesrid:$uesrid:username
密碼=user:userid:$userid:password

還需要這樣寫一份,因?yàn)樾枰坑脩裘麃淼卿洠@樣就可以根據(jù)用戶名來查詢用戶id。

user:username:userid:$userid

關(guān)注的人和粉絲設(shè)計(jì)

每個(gè)用戶在產(chǎn)生關(guān)注的動(dòng)作后,在redis中維護(hù)兩個(gè)無序集合set,一個(gè)是following,一個(gè)是follower,following集合保存的是我關(guān)注的人,follower集合保存的是我的粉絲。注意是每個(gè)用戶都要維護(hù)這樣的兩個(gè)集合,用userid來區(qū)。

微博表設(shè)計(jì)

每條微博的信息用hash結(jié)構(gòu)來存儲(chǔ),根據(jù)不同的微博id來區(qū)分,每條微博有如下信息:發(fā)布人id,發(fā)布人昵稱,發(fā)布時(shí)間,微博內(nèi)容。

推送表設(shè)計(jì)

用戶在發(fā)布微博的時(shí)候,將微博推送給自己的粉絲,每個(gè)粉絲都維護(hù)一個(gè)推送微博的鏈表,這個(gè)鏈表只保存50條最新微博。推送表中保存的是微博id.

關(guān)注操作

我們在redis中維護(hù)兩個(gè)無序集合set,一個(gè)是following,一個(gè)是follower,following集合保存的是我關(guān)注的人,follower集合保存的是我的粉絲。注意是每個(gè)用戶都要維護(hù)這樣的兩個(gè)集合,用userid來區(qū)分。

核心代碼:

$conn = connredis();//連接redis
if($f){//如果沒有關(guān)注過
 $conn->sadd('following:'.$user['userid'],$userid);
 $conn->sadd('follower:'.$userid,$user['userid']);
}else{
 $conn->srem('following:'.$user['userid'],$userid);
 $conn->srem('follower:'.$userid,$user['userid']);
}

發(fā)布微博

遍歷自己的粉絲,給每個(gè)粉絲都推送一條微博,將推送的微博保存到每個(gè)用戶的推送表中

核心代碼:

//1、保存微博
$conn = connredis();//連接redis
$postid = $conn->incr('global:postid');//生成微博id
//保存微博數(shù)據(jù)
$conn->hmset('post:postid:'.$postid,['userid'=>$user['userid'],'username'=>$user['username'],'time'=>time(),'content'=>$content]);
//2、推送微博
$fans = $conn->smembers('follower:'.$user['userid']);//獲取所有粉絲
$fans[] = $user['userid'];//自己也要推送一份
foreach($fans as $u){
 $conn->lpush('receivepost:'.$u,$postid);
 $conn->ltrim('receivepost:'.$u,0,49);//每個(gè)人保存最新微博50條
}

展示微博

首先連接redis,然后獲取自己的推送表的信息,遍歷推送表,然后獲取微博內(nèi)容,最后獲取自己的粉絲和關(guān)注數(shù)。進(jìn)行數(shù)據(jù)展示即可。

//獲取推送的微博id
$conn = connredis();
$postids = $conn->sort('receivepost:'.$user['userid'],['sort'=>'desc']);
//獲取微博
$posts = [];
foreach($postids as $postid){
$posts[] = $conn->hmget('post:postid:'.$postid,['userid','username','time','content']);
}
//獲取粉絲和關(guān)注數(shù)
$fansnum = $conn->scard('follower:'.$user['userid']);
$follownum = $conn->scard('following:'.$user['userid']);

總結(jié)

推模型的微博實(shí)例,實(shí)現(xiàn)還是比較簡單的,但是推模型對性能有影響,假如我是一個(gè)大V,微博關(guān)注數(shù)有2000W,我在發(fā)微博的時(shí)候需要給2000W個(gè)人推送一條微博,但是很多人又是僵尸粉,可想而知對性能有一定的影響。我很可以將推模型改為拉模型,這樣就能解決這個(gè)問題了。

更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php+redis數(shù)據(jù)庫程序設(shè)計(jì)技巧總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《PHP基本語法入門教程》、《PHP數(shù)組(Array)操作技巧大全》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》

希望本文所述對大家PHP程序設(shè)計(jì)有所幫助。

您可能感興趣的文章:
  • PHP實(shí)現(xiàn)發(fā)送微博消息功能完整示例
  • redis+php實(shí)現(xiàn)微博(三)微博列表功能詳解
  • redis+php實(shí)現(xiàn)微博(二)發(fā)布與關(guān)注功能詳解
  • redis+php實(shí)現(xiàn)微博(一)注冊與登錄功能詳解
  • PHP+redis實(shí)現(xiàn)微博的拉模型案例詳解
  • vue+php實(shí)現(xiàn)的微博留言功能示例
  • php微信分享到朋友圈、QQ、朋友、微博
  • PHP調(diào)用微博接口實(shí)現(xiàn)微博登錄的方法示例
  • php新浪微博登錄接口用法實(shí)例
  • 基于PHP實(shí)現(xiàn)發(fā)微博動(dòng)態(tài)代碼實(shí)例

標(biāo)簽:惠州 黔東 梅河口 文山 湘西 海北 廈門 濮陽

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《PHP+redis實(shí)現(xiàn)微博的推模型案例分析》,本文關(guān)鍵詞  PHP+redis,實(shí)現(xiàn),微博,的,推,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《PHP+redis實(shí)現(xiàn)微博的推模型案例分析》相關(guān)的同類信息!
  • 本頁收集關(guān)于PHP+redis實(shí)現(xiàn)微博的推模型案例分析的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    奇米综合一区二区三区精品视频| 色哟哟日韩精品| 日本欧美一区二区| 国产美女久久久久| www.欧美.com| 色综合一个色综合亚洲| 欧美日韩亚洲不卡| 欧美刺激午夜性久久久久久久| 91精品国产综合久久久久久漫画| 91亚洲男人天堂| 蜜桃91丨九色丨蝌蚪91桃色| 亚洲色图制服丝袜| 免费黄网站欧美| 国产激情视频一区二区三区欧美| 99久久国产综合精品色伊| 成人高清视频在线观看| 欧美伊人久久久久久午夜久久久久| 91农村精品一区二区在线| 欧美色老头old∨ideo| 欧美sm极限捆绑bd| 亚洲精品国产无天堂网2021 | 激情av综合网| 91美女精品福利| 久久久五月婷婷| 一区二区三区在线观看网站| 一区二区日韩av| 99久久免费精品| 国产精品欧美一区喷水| 国产综合久久久久影院| 日韩一级片在线观看| 日韩专区中文字幕一区二区| 成人毛片视频在线观看| 欧美极品少妇xxxxⅹ高跟鞋| 九色porny丨国产精品| 日韩欧美123| 国产精品99久久久久久久vr| 日韩一区二区免费视频| 久久成人免费网| 欧美韩国日本不卡| 成人免费毛片高清视频| 国产日韩精品一区二区三区| 国产麻豆成人精品| 欧美国产日韩精品免费观看| proumb性欧美在线观看| 国产精品乱子久久久久| 欧美午夜精品久久久| 性欧美疯狂xxxxbbbb| 日韩免费视频一区二区| 久久99深爱久久99精品| 国产精品初高中害羞小美女文| 99麻豆久久久国产精品免费优播| 综合网在线视频| 精品久久久久久综合日本欧美| 国产乱人伦偷精品视频免下载| 中文子幕无线码一区tr| 国产激情91久久精品导航| 91免费国产在线| 91香蕉视频mp4| 日本欧美韩国一区三区| 欧美国产成人精品| 欧美丰满嫩嫩电影| 99久久精品国产一区| 久久成人精品无人区| 亚洲午夜精品在线| **欧美大码日韩| 久久婷婷久久一区二区三区| 制服丝袜av成人在线看| 91丨porny丨户外露出| 国产福利精品导航| 91在线免费看| 夜夜揉揉日日人人青青一国产精品| 欧美亚洲国产一区二区三区va| 韩国一区二区在线观看| 久久99精品久久只有精品| 婷婷久久综合九色综合伊人色| 亚洲激情在线激情| 中文字幕欧美区| 欧美白人最猛性xxxxx69交| 欧美一级片免费看| 日韩一区二区在线观看视频| 精品蜜桃在线看| 久久婷婷成人综合色| 国产精品美女一区二区在线观看| 国产亚洲成av人在线观看导航| 中文字幕 久热精品 视频在线| 亚洲私人黄色宅男| 免费高清成人在线| gogo大胆日本视频一区| 欧美日韩免费一区二区三区| 欧美一区2区视频在线观看| 精品国产免费人成电影在线观看四季 | 成人av电影在线网| 色女孩综合影院| 久久婷婷一区二区三区| 亚洲美女少妇撒尿| 国产成人午夜精品5599| 欧美这里有精品| 国产精品成人在线观看| 丝袜亚洲另类丝袜在线| 久久国产生活片100| 欧美又粗又大又爽| 国产亚洲精品中文字幕| 免费看精品久久片| 精品免费视频.| 精品区一区二区| 视频一区视频二区中文| 欧洲视频一区二区| 成人免费小视频| 国产iv一区二区三区| 欧美精品一区视频| 久久精品免费看| 亚洲精品在线电影| 国产精品影视在线观看| 国产无人区一区二区三区| 久久精品国产网站| 久久久99精品免费观看不卡| 国产真实乱偷精品视频免| 精品久久久久久久久久久久久久久 | 国产精品视频九色porn| 91亚洲国产成人精品一区二三| 国产欧美va欧美不卡在线| 99re这里都是精品| 日韩电影在线免费看| 2021国产精品久久精品| 99re视频精品| 一区二区三区日韩欧美精品| 欧美日韩在线三区| 国产精品1区2区3区在线观看| 一区二区中文视频| 精品福利二区三区| 精品视频在线看| 国产精品亚洲成人| 蜜臀精品久久久久久蜜臀 | 午夜伦欧美伦电影理论片| 欧美日韩国产在线播放网站| 国产麻豆精品视频| 日韩国产欧美在线视频| 亚洲男帅同性gay1069| 日韩免费福利电影在线观看| 在线观看日韩精品| www.久久久久久久久| 国产麻豆91精品| 美女在线观看视频一区二区| 亚洲电影一区二区| 亚洲久草在线视频| 一区二区三区资源| 亚洲午夜视频在线观看| 日韩码欧中文字| 国产午夜久久久久| 欧美国产在线观看| 中文字幕欧美区| 亚洲久本草在线中文字幕| 日韩视频免费直播| 精品剧情v国产在线观看在线| 91精品在线麻豆| 久久夜色精品国产欧美乱极品| 精品国产乱码久久久久久免费| 日韩欧美一级二级三级久久久| 精品久久久久久最新网址| 久久久精品黄色| 亚洲欧美电影一区二区| 亚洲国产wwwccc36天堂| 免费高清成人在线| 99视频精品在线| 欧美精品色综合| 国产亲近乱来精品视频| 亚洲欧美日韩国产综合在线| 日韩黄色片在线观看| 大美女一区二区三区| 欧美日韩精品专区| 国产精品天天看| 日韩国产欧美在线视频| 99re免费视频精品全部| 欧美精品一区二区三区蜜臀| 一区二区三区日韩在线观看| 国产精品一区久久久久| 91精品国产色综合久久不卡蜜臀 | www.视频一区| 国产日韩欧美高清| 国产美女在线观看一区| 欧美一区二区久久久| 亚洲h动漫在线| 欧美午夜电影网| 亚洲成av人片在www色猫咪| 成人福利视频网站| 国产精品每日更新在线播放网址 | 欧美极品另类videosde| 蜜臀av性久久久久蜜臀aⅴ流畅| 欧美中文字幕一区| 亚洲综合在线视频| 欧洲精品一区二区| 亚洲国产日日夜夜| 欧美一区二区成人| 国产高清不卡一区| 国产精品毛片久久久久久 | 亚洲第一福利一区| 制服丝袜日韩国产| 国产精品一二三| 一区二区免费视频| 精品对白一区国产伦|