網(wǎng)站制作公司淺析什么是預(yù)發(fā)布驗(yàn)證,即使是經(jīng)過嚴(yán)格的測試,軟件部署到線上服務(wù)器之后還是經(jīng)常會(huì)出現(xiàn)各種問題,甚至根本無法啟動(dòng)服務(wù)器。主要原因是測試環(huán)境和線上環(huán)境并不相同,特別是應(yīng)用需要依賴的其他服務(wù),如數(shù)據(jù)庫,緩存、公用業(yè)務(wù)服務(wù)等,以及一些第三方服務(wù),如電信短信網(wǎng)關(guān)、銀行網(wǎng)銀接口等。
也許是數(shù)據(jù)庫表結(jié)構(gòu)不一致;也許是接口變化導(dǎo)致的通信失?。灰苍S是配置錯(cuò)誤導(dǎo)致連接失?。灰苍S是依賴的服務(wù)線上環(huán)境還沒有準(zhǔn)備好,這些問題都有可能導(dǎo)致應(yīng)用故障。
因此在網(wǎng)站發(fā)布時(shí),并不是把測試通過的代碼包直接發(fā)布到線上服務(wù)器,而是先發(fā)布到預(yù)發(fā)布機(jī)器上,開發(fā)工程師和測試工程師在預(yù)發(fā)布服務(wù)器上進(jìn)行預(yù)發(fā)布驗(yàn)證,執(zhí)行一些典型的業(yè)務(wù)流程,確認(rèn)系統(tǒng)沒有問題后才正式發(fā)布。預(yù)發(fā)布服務(wù)器是一種特殊用途的服務(wù)器,它和線上的正式服務(wù)器唯一的不同就是沒有配置在負(fù)載均衡服務(wù)器上,外部用戶無法訪問。
預(yù)發(fā)布服務(wù)器和線上正式服務(wù)器(應(yīng)用服務(wù)器1,2,3)都部署在相同的物理環(huán)境(同一個(gè)數(shù)據(jù)中心甚至同一個(gè)機(jī)架上,如果使用虛擬機(jī),甚至可能在同一個(gè)物理服務(wù)器上)中,使用相同的線上配置,依賴相同的外部服務(wù)。網(wǎng)站工程師通過在自己的開發(fā)用計(jì)算機(jī)上配置hosts文件綁定域名IP關(guān)系直接使用IP地址訪問預(yù)發(fā)布服務(wù)器。如果在預(yù)發(fā)布服務(wù)器上執(zhí)行的測試驗(yàn)證是正確的,基本可以確保在線上正式服務(wù)器部署時(shí)也沒有問題。
不過,也有可能會(huì)因?yàn)轭A(yù)發(fā)布驗(yàn)證而引入問題。因?yàn)轭A(yù)發(fā)布服務(wù)器連接的是真實(shí)的生產(chǎn)環(huán)境,所有的預(yù)發(fā)布驗(yàn)證操作都是真實(shí)有效的數(shù)據(jù),這些操作也許會(huì)引起不可預(yù)期的問題。比如創(chuàng)建一個(gè)店鋪,上架一個(gè)商品,就有可能有真的用戶過來購買,如果不能發(fā)貨,會(huì)導(dǎo)致用戶投訴。
此外,在網(wǎng)站應(yīng)用中強(qiáng)調(diào)的一個(gè)處理錯(cuò)誤的理念是快速失敗,即如果系統(tǒng)在啟動(dòng)時(shí)發(fā)現(xiàn)問題就立刻拋出異常,停止啟動(dòng)讓工程師介入排查錯(cuò)誤,而不是啟動(dòng)后執(zhí)行錯(cuò)誤的操作。深圳網(wǎng)站制作公司本文關(guān)于“網(wǎng)站制作公司淺析什么是預(yù)發(fā)布驗(yàn)證”的知識就介紹分享到這里,謝謝關(guān)注,博納網(wǎng)絡(luò)編輯整理。