看板 java 關於我們 聯絡資訊
想請問大家,假設現在有一個 template 會蠻常讀取的話 (每分鐘可能要兩三次, 或更多) 實務上大家會選擇怎麼做呢?(template 存成文字檔大概 2kb - 3kb 左右) 1, 寫進 DB, 每次用到就讀一次 2, 寫進 DB 讀出來塞到 session, session 過期了再讀一次 3, 用 yaml, properties 之類的檔案, 每用一次讀一次 4, 用一般的文字檔, 每用一次讀一次 目前是打算用 3 處理, 但其實不清楚讀 yaml/properties 跟讀 txt 對硬碟的 I/O 哪個比較好? (我猜一樣?) -- 還是說可以提供一下 keyword 讓我 google 參考一下, 感恩 <(_ _)> -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 175.97.13.81 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/java/M.1580803254.A.027.html ※ 編輯: swallowcc (175.97.13.81 臺灣), 02/04/2020 16:01:58
ssccg: 要看多常變動,不常改的當然以上皆非,cache在記憶體就好 02/04 16:04
ssccg: 至於放在記憶體哪裡(session或其他)是另一個問題 02/04 16:07
ssccg: yaml、properties、txt還是其他檔案對硬碟I/O都一樣,不同 02/04 16:09
ssccg: 檔案是讀進來後程式用不同的方式解析而已 02/04 16:09
感謝,template 應該不常改,會變動的地方會另外用變數代替,然後讀出來 replace 然後一般實務上會丟到記憶體哪裡呢?或者有文章讓我參考一下, 我自己讀看看 @@
jej: 隨便開一個static final的文字存就好啦 02/04 17:52
也可以,只是還是有修改的可能,所以如果可以留點彈性的話還是好一點。 (雖然修改的次數可能少到根本不需要為這種事操心...) 然後會發文另一方面是想問問看,像這種看起來很瑣碎的小事大家平常是怎麼做的。 其實開發過程中常常會遇到類似這種事情, 感覺像是怎麼處理都沒差,只要不太誇張的話通常是得過且過。 所以會好奇大家實務上會怎麼做。 ※ 編輯: swallowcc (175.97.13.81 臺灣), 02/04/2020 20:19:31
jej: 寫法會根據你的需求而有所不同 02/05 12:47
jej: 根據您回覆ssccg的內文 看起來static final就很夠了 02/05 12:47
jej: 一般的做法不外乎讀properties檔 或是存資料庫搭配cache 02/05 12:47
jej: 而cache又有不同的策略 02/05 12:47
jej: 有存記憶體的 有寫入檔案...等等 02/05 12:47
jej: 取出的方式也有不同有FIFO ...等等 02/05 12:47
jej: 要怎麼作就要看你的需求而定 02/05 12:47
GGing: redid 02/05 22:58
GGing: 打錯,可以考慮用 redid 02/05 22:59
SHANGOYANYI: 用static String存 儲存成外部資源通常是讀取頻率不 02/09 11:16
SHANGOYANYI: 高的東西 你這頻率算高了 02/09 11:16
感謝以上,決定用 static String 存取了 另外再做一支程式動態 update static String, 這樣就可以不用退換版更新 template
marsyang1: 這看起來還蠻像Cache的基本使用場景,不考慮下Guava的 02/23 20:41
marsyang1: Loading Cache? 02/23 20:41
看起來挺有趣, 感謝推薦 <(_ _)> ※ 編輯: swallowcc (175.97.13.81 臺灣), 02/25/2020 10:21:00