3 回答

TA貢獻(xiàn)2012條經(jīng)驗(yàn) 獲得超12個(gè)贊
我分享下我的做法
數(shù)據(jù)文件、數(shù)據(jù)文件的版本號(hào)、數(shù)據(jù)文件的MD5值這三個(gè)文件放在FTP上,應(yīng)用啟動(dòng)的時(shí)候根據(jù)版本決定是否要拉最新的文件到本地,根據(jù)MD5值判斷文件是否已經(jīng)損壞。
1、版本落后或MD5損壞的文件必須重新拉去,至于你是不分加還是全部載到內(nèi)存中,取決于你的應(yīng)用場(chǎng)景。
2、配置監(jiān)控項(xiàng),掃描所有應(yīng)用上文件的版本號(hào)和MD5值,確保所有系統(tǒng)上都拿到正確的文件版本
3、應(yīng)用啟動(dòng)要做限制,通用的做法是利用Spring初始化Bean的時(shí)候是單線程方式,或者你可以做一個(gè)異步加載,但要記得做好內(nèi)存鎖。
4、應(yīng)用設(shè)定一個(gè)掃描間隔,定期掃描FTP上文件版本和MD5是否需要更新
當(dāng)然咯,我已經(jīng)形成一個(gè)小框架了,專門用這個(gè)框架來(lái)同步偏靜態(tài)的大數(shù)據(jù)。略重,但性能杠杠的。
添加回答
舉報(bào)