1.觀察者模式---(警察小偷模式):
? ??觀察者模式,是軟件設(shè)計模式的一種。在此種模式中,一個對象它本身的狀態(tài)改變時會主動發(fā)出通知,而不是專門寫一段代碼專門用來監(jiān)測這個對象的狀態(tài)。效率提高了。此種模式通常被用來實現(xiàn)事件處理系統(tǒng)(例如控件的點擊事件)
? ??觀察者設(shè)計模式定義了對象間的一種一對多的組合關(guān)系,以便一個對象的狀態(tài)發(fā)生變化時,所有依賴于它的對象都得到通知。
2.md5算法(哈希算法)
-是一種信息摘要算法,通常用在信息加密領(lǐng)域。
MD5哈希算法是將任意長度的二進(jìn)制字符串映射為固定長度的二進(jìn)制字符串。這個串,基本上是唯一的。
- 特性
? ? - 單向不可逆
? ? - 輸出長度固定
? ? ? ? - 128位的二進(jìn)制
? ? ? ? - 為了人們能看懂,用Unicode碼進(jìn)行存儲, 存儲的時候是十六進(jìn)制,也就是32位16進(jìn)制,32位Unicode
? ? - 抗爆破能力強
? ? - 指紋用法驗證數(shù)據(jù)完整,原數(shù)據(jù)只要發(fā)生任何變更,md5都會發(fā)生很大的變化
3.數(shù)據(jù)安全用到的一些技術(shù)
????(1)編碼,解碼(轉(zhuǎn)換的思維)
? ? ????- encode,decode
? ? ????- base64
????(2)摘要算法
? ? ????- md5
? ????? - sha
????(3)加密算法
? ????? - 秘鑰
? ????? - 對稱加密
? ? ? ????? - 一個鑰匙
? ? ? ????? - DES,AES
? ? ? ????? - 效率高
? ? ? ? ????- 安全性略低
? ????? - 非對稱加密
? ? ? ? ????- 一堆鑰匙,公鑰,私鑰
? ? ? ? ????- RSA
? ? ? ????? - 公鑰加密,私鑰能解,私鑰加密,公鑰解密
? ? ? ????? - 支付寶用RSA加密(二層)
? ? ? ????? - 微信也用 RSA
4.幾種數(shù)據(jù)庫的優(yōu)缺點及適用情況(待補充)
? ? (1)關(guān)系型數(shù)據(jù)庫
????????mysql:以表狀結(jié)構(gòu)存儲,講究關(guān)系,相對來說在web開發(fā)中使用是最廣泛的,和時間不相關(guān)。
? ? (2)非關(guān)系型數(shù)據(jù)庫
?----? redis:存儲的時候是以鍵值對進(jìn)行存儲,這樣當(dāng)然也就效率特別高。而且 因為是存儲在內(nèi)存里面,所以速度也特別快。還有一點就是支持過期時間。? ? redis經(jīng)常用的地方主要是三個地方:一個是做數(shù)據(jù)存儲,一般是用在數(shù)據(jù)存儲要求效率高的地方。二是做緩存,第三個那就是消息隊列。Redis也以消息隊列的形式存在,作為內(nèi)嵌的List存在,通常在一個電商類型的數(shù)據(jù)處理過程之中,有關(guān)商品,熱銷,推薦排序的隊列,通常存放在Redis之中。
---- Redis的缺點
因為受到物理內(nèi)存的限制,不能用作海量數(shù)據(jù)的高性能讀寫,因此Redis適合的場景主要局限在較小數(shù)據(jù)量的高性能操作和運算上。