在創(chuàng)建軟件即服務(wù)現(xiàn)代云手機APP軟件的過程中使用了十二因素手機APP軟件開發(fā)的方法,可以最大限度地減少分歧,并且可以在不進行重大更改的情況下進行擴展。它是一組最佳實踐,旨在確保最終產(chǎn)品易于橫向擴展。
作為跟蹤數(shù)據(jù)庫的副本的單個 repo 或一組 repo 共享一個根提交,該根提交在 Git 中分散 - 一個版本控制系統(tǒng)。基于十二因素方法的手機APP軟件有一個代碼庫,但有許多部署——手機APP軟件的運行實例。這意味著該手機APP軟件可以在生產(chǎn)、暫存和本地開發(fā)環(huán)境中運行。
支持庫(如 Ruby 的 gems 或 Nodejs 的 npm)通常都有打包系統(tǒng),可以在安裝過程中使用。這些庫以后可以在系統(tǒng)范圍內(nèi)安裝。在該方法中,手機APP軟件從不依賴于隱式系統(tǒng)范圍的包。它通過依賴聲明清單聲明依賴,并使用隔離工具來確保沒有隱式依賴“逃逸”。這些手機APP軟件也不依賴于任何系統(tǒng)工具的存在。
在配置的情況下,該方法需要將代碼與配置分開,這與代碼相反,這在部署中會有所不同。這可以通過使代碼庫成為開源來輕松檢查,而無需犧牲任何憑據(jù)。更重要的是,使用這種方法開發(fā)的手機APP軟件將配置存儲在環(huán)境變量中,使其易于修改而無需更改代碼。
在這種開發(fā)方法中,手機APP軟件代碼不區(qū)分本地服務(wù)和第三方服務(wù)。這意味著手機APP軟件的部署可以隨時將本地數(shù)據(jù)庫與第三方數(shù)據(jù)庫交換,而無需對代碼進行任何更改。多虧了這一點,當(dāng)遇到問題時,可以分離當(dāng)前的生產(chǎn)數(shù)據(jù)庫并附加一個新的數(shù)據(jù)庫,而無需更改代碼。
十二因素手機APP軟件代碼庫可以分三個階段轉(zhuǎn)換為部署:構(gòu)建、發(fā)布和運行階段。這種方法嚴(yán)格地將這些階段分開,因為無法在運行時對代碼進行更改。
流程的特點是無共享架構(gòu)并且是無狀態(tài)的。要持久化的數(shù)據(jù)必須存儲在數(shù)據(jù)庫中。使用所討論的方法開發(fā)的手機APP軟件從不假設(shè)存儲在磁盤或內(nèi)存中的內(nèi)容稍后將可用。
遵循十二因素規(guī)則的手機APP軟件是自包含的,這意味著它們不依賴運行時注入來創(chuàng)建面向 Web 的服務(wù)。例如,通過綁定到端口并確認(rèn)來自給定端口的請求,將 HTTP 作為服務(wù)導(dǎo)出。因此,應(yīng)該使用端口綁定來直接通過端口公開和授予訪問權(quán)限。
該方法表明,這些流程是一等公民。多虧了這一點,開發(fā)人員可以將各種類型的工作分配給流程類型。開發(fā)的手機APP軟件的本質(zhì)是它們是水平縮放的,而不是垂直縮放的。這意味著添加更多并發(fā)性很容易執(zhí)行。
這些過程是一次性的,這意味著它們可以在任何給定時間停止或啟動。多虧了這一點,該手機APP軟件確保了快速和彈性的擴展以及快速部署或配置更改。另一方面,關(guān)閉應(yīng)該是優(yōu)雅的,以最大限度地提高魯棒性。
生產(chǎn)和部署之間的差距是確保十二因素手機APP軟件持續(xù)部署的原因。生產(chǎn)、登臺和開發(fā)環(huán)境應(yīng)盡可能相似。使用相同的支持服務(wù)可確保完全兼容。
日志應(yīng)被視為事件流,不應(yīng)處理手機APP軟件輸出流或其路由的存儲。手機APP軟件不應(yīng)寫入或管理日志文件。
一次性管理進程以及手機APP軟件的長時間運行進程應(yīng)在同一環(huán)境中運行。他們使用相同的配置和代碼庫。
十二因素手機APP軟件開發(fā)方法是一組很好的最佳實踐,可以創(chuàng)建可以輕松橫向擴展的產(chǎn)品。遵循這種方法可確保手機APP軟件可以作為服務(wù)交付,并且可靠、快速且可移植。更重要的是,十二因素手機APP軟件可以用任何語言編寫。
接入ChatGPT系統(tǒng)多少錢?
APP如何接入ChatGPT系
小程序開發(fā)費用,開發(fā)小程序需要
怎么選擇一家靠譜的小程序制作公
app制作流程-策略|評估規(guī)劃
開發(fā)一個app多少錢?
客服QQ:121446412 聯(lián)系電話:15321250321
京ICP備17026149號-1版權(quán)所有@2011-2022 北京天品互聯(lián)科技有限公司 公司地址:北京市海淀區(qū)上地信息路甲28號B座(二層)02D室-010號