一、制作大型軟件一般選用什么類型的數(shù)據(jù)庫(kù)以保護(hù)數(shù)據(jù)安全
所謂「加密只能增加破解成本,高到超過本身的價(jià)值了,就安全了」是一種誤導(dǎo)的說法。加密增加破解成本是針對(duì)信道加密和具有一定時(shí)效性的信息的。對(duì)于這種長(zhǎng)期使用的數(shù)據(jù),破解成本永遠(yuǎn)遠(yuǎn)遠(yuǎn)小于本身價(jià)值。因?yàn)槠平獬杀緯?huì)隨著信息破解所需的時(shí)間大幅降低,而沒有時(shí)效性的信息其破解成本幾乎相對(duì)為零。
所以我非常不喜歡這種需求。在戰(zhàn)爭(zhēng)里就是「戰(zhàn)略目的不明」。所謂「不希望客戶輕易」,就如同戰(zhàn)爭(zhēng)里的為了「揚(yáng)我皇威」之類的模糊不清的目的。實(shí)現(xiàn)起來必定矛盾百出。
話說回來,如果題主真的就是要一個(gè)「知識(shí)封鎖」的方案,不如根本不用 RDBMS。既然就要把數(shù)據(jù) deploy 到 client machine 上,相比 ACID 也不需要了。實(shí)現(xiàn)一個(gè)帶 disk backup 的 hashtable 就足以完成任務(wù)了。
延伸閱讀:
二、MemCache是什么
MemCache是一個(gè)自由、源碼開放、高性能、分布式的分布式內(nèi)存對(duì)象緩存系統(tǒng),用于動(dòng)態(tài)Web應(yīng)用以減輕數(shù)據(jù)庫(kù)的負(fù)載。它通過在內(nèi)存中緩存數(shù)據(jù)和對(duì)象來減少讀取數(shù)據(jù)庫(kù)的次數(shù),從而提高了網(wǎng)站訪問的速度。MemCaChe是一個(gè)存儲(chǔ)鍵值對(duì)的HashMap,在內(nèi)存中對(duì)任意的數(shù)據(jù)(比如字符串、對(duì)象等)所使用的key-value存儲(chǔ),數(shù)據(jù)可以來自數(shù)據(jù)庫(kù)調(diào)用、API調(diào)用,或者頁面渲染的結(jié)果。MemCache設(shè)計(jì)理念就是小而強(qiáng)大,它簡(jiǎn)單的設(shè)計(jì)促進(jìn)了快速部署、易于開發(fā)并解決面對(duì)大規(guī)模的數(shù)據(jù)緩存的許多難題,而所開放的API使得MemCache能用于Java、C/C++C#、Perl、Python、PHP、Ruby等大部分流行的程序語言。