Soft_Job 板


LINE

大家好 小弟是軟工菜鳥 目前有個專案的需求是,會在一段程式邏輯中 對資料庫進行多次讀取或寫入,中間牽涉到兩張表以上 因為需要每秒執行這段邏輯至少2次,怕用mysql會影響效能,於是考慮用Redis來做 但有查到Redis執行命令,即使用multi exec也並非原子性 所以假設現在Redis有5行寫入要執行,但是執行到一半伺服器掛掉 會不會導致資料只寫了一半的數據錯誤問題呢? 那這樣的業務情況就表示不適合用Redis了是嗎? 謝謝! --
QR Code



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.141.18.126 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Soft_Job/M.1690859355.A.382.html
1F:→ integritywei: lua script?08/01 11:25
2F:→ quickbym1: 很在意資料的正確性就還是應該用 RDBMS 才對,MySQL08/01 11:27
3F:→ quickbym1: 沒那麼廢啦!有做讀寫分離嗎?08/01 11:27
4F:→ abccbaandy: multi exec不就行了? 你從哪查到非原子性?08/01 11:28
5F:→ kyoe: try catch?掛掉 rollback?08/01 11:31
6F:→ ddoll288: 雖然伺服器掛掉不是你的問題,但是你要有備案處理08/01 11:58
7F:→ underwater: redis cluster瞭解一下,並且memory db本來就沒保證08/01 12:32
8F:推 ooooooo: 感覺你要的不是Redis而是queuing system 像是rabbit mq08/01 13:31
9F:→ ooooooo: 或是Kafka 之類的08/01 13:31
10F:→ alpe: 上千TPS再來擔心吧08/01 13:40
11F:→ brucetu: 你的操作具體是什麼內容,系統設計沒有明確規格就沒辦法08/01 13:45
12F:→ brucetu: 給你正確的解法,每一種場景都有他的tradeoff08/01 13:45
13F:→ brucetu: 除非你的操作是mysql server memory cache裝不下的資料,08/01 13:47
14F:→ brucetu: 一定牽涉到實體硬碟讀取加上每秒兩次不間斷而且否則你都08/01 13:47
15F:→ brucetu: 是想太多直接mysql做就好了08/01 13:47
16F:→ brucetu: 真的要計較得話即使是RMDBS都有可能在crash的時候資料沒08/01 13:51
17F:→ brucetu: 有完整寫入硬碟導致你必須手動修復08/01 13:51
18F:→ brucetu: 原子性是存在邏輯層的,在實體世界,任何硬體操作都有可08/01 13:52
19F:→ brucetu: 能因為硬體失敗失去原子性08/01 13:52
20F:→ brucetu: 如果你不考慮硬體失敗,那麼直接用redis persistence to08/01 13:53
21F:→ brucetu: disk沒有任何問題08/01 13:53
22F:→ brucetu: 因為RMDBS也是幫你塞了一層memory cache在硬碟寫入之前,08/01 13:54
23F:→ brucetu: 寫入之前就當機一樣會出問題08/01 13:54
24F:→ worf: rdbms有那麼弱嗎08/01 13:56
25F:→ brucetu: 你真的要求資料絕對的完整性那就是用queue把一個操作紀08/01 13:56
26F:→ brucetu: 錄到任何一種載體最簡單就是DB,然後另一支程式根據queue08/01 13:56
27F:→ brucetu: 把一些資料寫到你需要的其他地方,再標示queue中的這個ta08/01 13:56
28F:→ brucetu: sk已經被正確的寫入到其他位置08/01 13:56
29F:→ brucetu: 然後你可能跟同事或owner討論完就發現你的場景根本不需要08/01 13:57
30F:→ brucetu: 這麼嚴謹,量也沒那麼大,直接mysql一秒跑兩次就結案了,08/01 13:57
31F:→ brucetu: 也假設server hardware error不會好死不死造成data corru08/01 13:57
32F:→ brucetu: ption08/01 13:57
33F:推 holebro: 你是yangog4ever的分身嗎08/01 14:03
不是喔
34F:→ ddoll288: 一般AP/DB同一台應該不需要考慮這個問題,過度設計了08/01 15:20
35F:推 netburst: queue+108/01 16:45
36F:→ qss05: 哪那麼爛,之前公司要取資料,一次就取一千萬筆,每五百筆08/01 17:01
37F:→ qss05: commit一次也沒當08/01 17:01
38F:噓 newking761: 我懷疑你本身有問題08/01 17:52
39F:→ weinine32: 每張表的資料多少?索引怎麼設?能不能分庫分表?預算08/01 18:15
40F:→ weinine32: 多少?08/01 18:15
41F:→ weinine32: 即時性? 為什麼每秒兩次?能不能用前端減少查詢量?08/01 18:20
42F:→ weinine32: 硬體規格? 壓力測試報告?08/01 18:45
43F:噓 weinine32: 不講業務和環境,談任何技術都是耍流氓08/01 18:56
44F:推 drajan: 一秒兩次 用MySQL沒問題,做讀寫分離就好,寫入包在一個 t08/01 19:12
45F:→ drajan: ransaction裡面08/01 19:12
46F:→ lovdkkkk: redis 可以做 lock08/01 19:13
47F:→ lovdkkkk: https://0rz.tw/at3R108/01 19:14
48F:推 s06yji3: 每秒2次的頻率為啥會擔心MySQL影響效能?08/01 19:30
49F:推 w0005151: RDBMS很強啦,基本schema有做好,讀寫node分離,再不行08/01 19:49
50F:→ w0005151: 切table partition,可以應付90%以上的場景08/01 19:49
51F:→ w0005151: 一個table幾百萬條record都不會是問題08/01 19:50
52F:推 hegemon: 一個table 幾十億都看過...08/01 20:13
53F:→ f12sd2e2aa: 每秒兩次…08/01 20:57
謝謝各位前輩回覆!會去找相關資料來看,目前還是選擇用一般關聯式資料庫來做 ※ 編輯: yangog (36.235.184.182 臺灣), 08/01/2023 22:19:02
54F:→ superpandal: ........... 08/01 23:35
55F:推 Serisu: TPS 2 應該不用想那麼多吧... 08/02 01:14
56F:推 internetms52: 讀取跟寫入要分開討論,寫入有交易問題 08/02 07:42
57F:→ internetms52: 先確認是否允許dirty read 08/02 07:44







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:Tech_Job站內搜尋

TOP