終于有人把云計算與數(shù)據(jù)庫的關(guān)系講明白了
導(dǎo)讀:本文討論云計算與數(shù)據(jù)庫的關(guān)系,包括云數(shù)據(jù)庫自身的技術(shù)和特征,也包括云數(shù)據(jù)庫的使用方式和形態(tài)變遷。


12要素應(yīng)用的任意部署,都應(yīng)該可以在不進行任何代碼改動的情況下完成,將本地MySQL數(shù)據(jù)庫換成第三方服務(wù)(例如 Amazon RDS)。與此類似,本地SMTP服務(wù)應(yīng)該也可以和第三方SMTP服務(wù)(例如Postmark)互換。這使得云應(yīng)用研發(fā)不深度依賴于數(shù)據(jù)庫系統(tǒng),使得云數(shù)據(jù)庫之間的功能差異化競爭被消滅。 12要素反對與會話具有高黏性。會話中的數(shù)據(jù)應(yīng)該保存在諸如Memcached或Redis等帶有過期時間的緩存中。這就要求云數(shù)據(jù)庫服務(wù)要么有多種產(chǎn)品支持不同能力,要么在一個產(chǎn)品內(nèi)提供帶有過期時間的緩存。 12要素應(yīng)用本身從不考慮存儲自己的輸出流,即不提倡提供日志功能(不寫或者管理日志文件),而是把信息直接輸出到標準輸出(stdout)事件流。在開發(fā)環(huán)境中,開發(fā)人員可以通過這些數(shù)據(jù)流,在終端實時看到應(yīng)用的活動。在應(yīng)用端不能提供日志以供確認問題,這對服務(wù)端的數(shù)據(jù)庫提出了更高的要求:第一數(shù)據(jù)絕對保持強一致而不存儲,第二數(shù)據(jù)庫自身有分析等位問題的能力。但是,不是所有類型的應(yīng)用都適合進行這方面的設(shè)計和實現(xiàn),大型復(fù)雜類應(yīng)用和網(wǎng)站類應(yīng)用的定位問題多依賴于日志。
交付方式從軟件交付走向服務(wù)交付。用戶看似在使用一個軟件其實不再是一個軟件,一系列軟件組合成一個服務(wù)后提供給用戶,對用戶而言一項項具體的服務(wù)是可直接感受到的。 開發(fā)方式從底層(IaaS+PaaS)走向上層(SaaS)。云計算不僅提供CPU和機架,更多的是提供用戶可感受的軟件服務(wù)(SaaS),或者軟件都感受不到,直接感受到的就是服務(wù)(Serverless)。


單一職責(zé):該云數(shù)據(jù)庫的業(yè)務(wù)是獨立的,負責(zé)的團隊是自主的。云數(shù)據(jù)庫負責(zé)單一的服務(wù)且該服務(wù)處于核心領(lǐng)域。該云數(shù)據(jù)庫具有高內(nèi)聚、低耦合、與其他系統(tǒng)和領(lǐng)域有明確邊界的特點。 輕量級通信:云數(shù)據(jù)間的通信應(yīng)該簡單、輕量,且與語言和平臺無關(guān)。 獨立性:該云數(shù)據(jù)庫應(yīng)是獨立開發(fā)、獨立測試和獨立部署的。


評論
圖片
表情
