一個(gè)非常好的問題。我是工作多年的Web應(yīng)用架構(gòu)師,來回答一下這個(gè)問題。我,了解更多IT專業(yè)知識(shí)。
一,第一個(gè)問題:怎么就出現(xiàn)些小錯(cuò)誤呢?
1,如果是代碼功能方面的錯(cuò)誤,那么根本原因是代碼質(zhì)量低,測(cè)試不充分。
2,如果是部署發(fā)布時(shí),生產(chǎn)環(huán)境出現(xiàn)的錯(cuò)誤在開發(fā)環(huán)境不能重現(xiàn),那就是服務(wù)器沒有正確配置運(yùn)行環(huán)境和需要的變量。
二,第二個(gè)問題:怎么解決呢?
1)單元測(cè)試,覆蓋主要功能函數(shù),及時(shí)發(fā)現(xiàn)功能缺陷和代碼改動(dòng)帶來的bug。
2)積累單元測(cè)試用例庫,避免修復(fù)的bug再次發(fā)生,逐漸提高代碼質(zhì)量。
3)回歸測(cè)試,和自動(dòng)構(gòu)建系統(tǒng)集成,有代碼提交時(shí),全量運(yùn)行單元測(cè)試,確保新功能或者修復(fù)bug時(shí)沒有影響到已有功能。
4)API接口測(cè)試,使用Postman調(diào)試工具,對(duì)返回結(jié)果進(jìn)行測(cè)試校驗(yàn)。
1)環(huán)境變量、參數(shù)配置、程序打包,這些部署準(zhǔn)備工作都要自動(dòng)化,避免手動(dòng)操作時(shí)的遺漏和錯(cuò)誤。
2)推薦使用云服務(wù)器,充分利用云技術(shù)帶來的基礎(chǔ)架構(gòu)優(yōu)勢(shì),減少安裝配置的瑣碎工作。
3)自動(dòng)化部署發(fā)布,代碼提交時(shí)觸發(fā)自動(dòng)構(gòu)建系統(tǒng)系統(tǒng),構(gòu)建成功、測(cè)試通過后,更新部署服務(wù)器。
4)推薦使用Docker容器技術(shù),Docker是開源的應(yīng)用容器引擎,將應(yīng)用以及依賴打包到一個(gè)可移植的鏡像中,也就是將所有安裝配置信息代碼化自動(dòng)化了,保證了開發(fā)環(huán)境和生產(chǎn)環(huán)境的一致性。