亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

mysql - 類似于之類的通知系統如何設計數據庫

瀏覽:85日期:2022-06-21 10:59:02

問題描述

最近打算實現一個通知系統。就像segmentfault差不多。比如那個人頂了你的答案。那個人采納了你的答案等。

而這些情況很多的時候如何去設計數據庫的字段呢?

保存的時候需要保存關系嗎?還是直接生成一個消息。顯示消息就行了??

最近做這個。好迷茫的感覺

問題解答

回答1:

可以使用 redis 的集合.

首先設置各種事件,比如0:關注1:采納2:贊3:邀請

redis 中每個人的有一個集合. uid 為集合名

假設有如下事件:1.用戶 A 贊了你在某個題目下的回答.2.用戶 B 邀請你回答某個問題

redis集合中就保存:0:Auid:問題id3:Buid:問題id

回答2:

謝邀。本人也沒有相關經驗。

建議保存關系,這對以后的數據分析比較有利。

redis是應用層面的優化,可以參考一下@悲慘的大爺 的答案。

SQL表有2種維度:第一種:只記錄用戶的關注, 采納, 贊, 邀請的數量

id(pk) | user_id | count | type(user_id + type)做唯一索引;優點:簡單;缺點:只能看到用戶收到多少關注,但不知道收到的關注;

第二種:在第一種的基礎上把count字段換成another_user_id(這個名稱不好,隨便想的,不要參考)(user_id + another_user_id + type)做唯一索引;優點:可以知道該用戶被關注了;缺點:表數據量增長會很快,容易上千萬甚至億級,而且不便統計(性能差);

但第二種的缺點也不是不可解決,分庫分區、水平分表、另起一個表專門存儲統計數據等等,若干方法,等有需要的時候再考慮這個問題吧。

以上方案,視乎你們對業務的需求吧。

可能有更好的方法,此處僅供參考。

相關文章:
主站蜘蛛池模板: 无码精品日韩中文字幕 | 日日摸夜夜添夜夜添破第一 | 98精品视频 | 亚洲精品欧洲久久婷婷99 | 亚洲精品久一区 | 日本免费新一区二区三区 | 一色综合| 亚洲爆乳无码一区二区三区 | 免费一级特黄欧美大片勹久久网 | 国产一区高清 | 国产自线一二三四2021 | 日韩经典在线 | 日韩一区国产二区欧美三 | 最新亚洲手机在线人成网站 | 国产小视频免费在线观看 | 麻豆精品a在线观看 | 亚洲精品影院一区二区 | www.色婷婷.com | 久久久亚洲精品国产 | 日本二本三本二区 | 国产亚洲精品高清在线 | 精品亚洲欧美高清不卡高清 | 日本黄色网页 | 国产视频久久久久 | 欧美黑人粗硬大在线看 | 一级黄色毛毛片 | 特级黄色一级片 | 亚洲福利视频一区二区三区 | 青青青草国产 | www.91久久| 亚洲第一第二区 | 九九久久国产精品免费热6 九九天天影视 | 亚洲欧美日韩综合精品网 | 伊人久久精品线影院 | 激情免费网站 | 亚洲国产日韩精品 | 黄色一级在线视频 | 一级午夜a毛片免费视频 | 国产精品人人视频 | 好色影院 | 欧美一区二区在线播放 |