這一期教程中嗤形,我們需要在華為云耀云服務(wù)器L實(shí)例上部署前后端分離的應(yīng)用項(xiàng)目趟大,前后端分離項(xiàng)目是一種常見的軟件開發(fā)架構(gòu),它將前端和后端開發(fā)分離喊积,使開發(fā)團(tuán)隊(duì)可以獨(dú)立開發(fā)和維護(hù)兩者,同時(shí)通過(guò)API或其他通信方式進(jìn)行交互庄拇。這種架構(gòu)的主要優(yōu)點(diǎn)包括更好的團(tuán)隊(duì)協(xié)作注服、靈活性、可維護(hù)性和可擴(kuò)展性措近。以下是前后端分離項(xiàng)目的一些關(guān)鍵概念和步驟:
1.?前端(Frontend):
???-?前端是用戶與應(yīng)用程序交互的界面部分溶弟,通常是一個(gè)Web應(yīng)用、移動(dòng)應(yīng)用或桌面應(yīng)用瞭郑。
???-?前端開發(fā)人員使用HTML辜御、CSS和JavaScript等技術(shù)來(lái)創(chuàng)建用戶界面和用戶體驗(yàn)。
???-?前端應(yīng)用通過(guò)HTTP請(qǐng)求與后端API通信屈张,獲取數(shù)據(jù)和執(zhí)行操作擒权。
2.?后端(Backend):
???-?后端是應(yīng)用程序的服務(wù)器端部分,負(fù)責(zé)處理業(yè)務(wù)邏輯阁谆、數(shù)據(jù)存儲(chǔ)和安全性碳抄。
???-?后端開發(fā)人員使用不同的編程語(yǔ)言和框架來(lái)構(gòu)建API和服務(wù)器。
???-?后端提供API供前端應(yīng)用程序訪問(wèn)和操作數(shù)據(jù)场绿。
3.?API(Application?Programming?Interface):
???-?API是前后端分離項(xiàng)目的核心剖效,它定義了前端應(yīng)用程序與后端服務(wù)器之間的通信規(guī)則和數(shù)據(jù)格式。
???-?RESTful?API和GraphQL是常見的API設(shè)計(jì)風(fēng)格焰盗,用于支持前端與后端之間的數(shù)據(jù)交換璧尸。
4.?數(shù)據(jù)庫(kù):
???-?后端通常使用數(shù)據(jù)庫(kù)來(lái)存儲(chǔ)和管理數(shù)據(jù)。常見的數(shù)據(jù)庫(kù)類型包括關(guān)系型數(shù)據(jù)庫(kù)(如MySQL熬拒、PostgreSQL)和NoSQL數(shù)據(jù)庫(kù)(如MongoDB)爷光。
???-?后端開發(fā)人員負(fù)責(zé)與數(shù)據(jù)庫(kù)交互,執(zhí)行CRUD操作(創(chuàng)建澎粟、讀取蛀序、更新、刪除)以支持前端應(yīng)用捌议。
5.?前后端協(xié)作:
???-?前端和后端團(tuán)隊(duì)之間需要密切合作哼拔,以確保API的設(shè)計(jì)符合前端需求,并且后端提供的數(shù)據(jù)和功能滿足前端應(yīng)用的要求瓣颅。
???-?使用版本控制系統(tǒng)(如Git)來(lái)管理前端和后端代碼倦逐,確保團(tuán)隊(duì)協(xié)作和版本管理的順暢進(jìn)行。
6.?部署和運(yùn)維:
???-?前后端分離項(xiàng)目的部署通常需要考慮前端應(yīng)用的靜態(tài)文件托管(如CDN)以及后端服務(wù)器的托管和伸縮性。
???-?運(yùn)維團(tuán)隊(duì)負(fù)責(zé)監(jiān)控檬姥、維護(hù)和升級(jí)服務(wù)器曾我,確保應(yīng)用的穩(wěn)定性和安全性。
7.?安全性:
???-?前后端分離項(xiàng)目需要關(guān)注安全性健民,包括數(shù)據(jù)傳輸?shù)募用苁愠病⑸矸蒡?yàn)證和授權(quán)、輸入驗(yàn)證以及防止常見的Web攻擊秉犹,如跨站腳本(XSS)和跨站請(qǐng)求偽造(CSRF)蛉谜。
總之,前后端分離項(xiàng)目是一種靈活的開發(fā)架構(gòu)崇堵,可以更好地支持大型和復(fù)雜的應(yīng)用程序型诚,同時(shí)允許前端和后端團(tuán)隊(duì)專注于各自的領(lǐng)域。但要確保良好的溝通和協(xié)作鸳劳,以保證項(xiàng)目的成功實(shí)施狰贯。
接下來(lái),我們需要下載一個(gè)前后端分離的項(xiàng)目來(lái)進(jìn)行相關(guān)的操作赏廓。首先涵紊,我們登錄華為云控制臺(tái)查看幾個(gè)關(guān)鍵的地方。
獲取云服務(wù)的ip地址幔摸,這個(gè)是服務(wù)器后面訪問(wèn)的地址摸柄。
配置好華為云耀云服務(wù)器L實(shí)例的安全組信息,保證我們的服務(wù)器能夠正常的訪問(wèn)既忆,然后我們使用數(shù)據(jù)庫(kù)管理軟件來(lái)管理華為云的數(shù)據(jù)庫(kù)塘幅,這里面使用navicat為例,將云服務(wù)器的mysql部署成功尿贫。
在華為云耀云服務(wù)器L實(shí)例上新建一個(gè)測(cè)試數(shù)據(jù)庫(kù),然后開始部署我們的前后端分離系統(tǒng)踏揣,這里以若依前后端分離管理系統(tǒng)為例庆亡,部署系統(tǒng)。下載地址https://gitee.com/y_project/RuoYi-Vue
查看目錄接口捞稿,圖中紅框標(biāo)注的地方為項(xiàng)目的前端部分又谋,其他部分為后端部分。接下來(lái)我們首先運(yùn)行系統(tǒng)的后端部分娱局,使用idea打開項(xiàng)目彰亥。
首先將數(shù)據(jù)庫(kù)導(dǎo)入到服務(wù)器上,
兩個(gè)sql文件衰齐,導(dǎo)入成功后任斋,看一下數(shù)據(jù)庫(kù)的表格是否導(dǎo)入成功。
查看華為云云數(shù)據(jù)庫(kù)中耻涛,可以看到后端需要的數(shù)據(jù)庫(kù)表已經(jīng)導(dǎo)入到了云服務(wù)器上废酷。
然后瘟檩,需要將云服務(wù)器上的數(shù)據(jù)庫(kù)配置到后端的代碼中。
在這個(gè)文件中澈蟆,我們配置好云服務(wù)的數(shù)據(jù)庫(kù)墨辛,地址和數(shù)據(jù)庫(kù)名為我們之前在云服務(wù)器上設(shè)置的數(shù)據(jù)庫(kù)。
配置好之后趴俘,點(diǎn)擊idea的運(yùn)行睹簇,來(lái)運(yùn)行后端的項(xiàng)目。
運(yùn)行之后發(fā)現(xiàn)報(bào)錯(cuò)寥闪,原因是redis沒有啟動(dòng)太惠,如果本地環(huán)境下沒有redis環(huán)境,需要進(jìn)行安裝一下橙垢,如果安裝了則需要啟動(dòng)一下垛叨。
現(xiàn)在需要在本地安裝redis,然后啟動(dòng)柜某,這里我們用的是mac環(huán)境下來(lái)進(jìn)行安裝嗽元,windows可以去看看其他的安裝教程。
下載redis安裝包:https://redis.io/download/
這里選擇6.2版本下載(經(jīng)測(cè)試5.0版本的安裝會(huì)有報(bào)錯(cuò))
進(jìn)入該安裝包后喂击,進(jìn)入終端剂癌,測(cè)試編譯指令。
測(cè)試通過(guò)后翰绊,輸入指令安裝佩谷。
輸入指令啟動(dòng)redis,可以看圖监嗜,啟動(dòng)成功谐檀。
再次啟動(dòng)后端服務(wù),查看后端服務(wù)是否啟動(dòng)成功裁奇。
可以發(fā)現(xiàn)后端啟動(dòng)成功桐猬,服務(wù)ok。