通用的前後端分離專案技術與框架方案

weixin_33935777發表於2018-08-23

摘要:本文是關於前後端分離專案的技術與框架選型通用方案,是一個比較成熟的方案。目前大部分公司也是採用這個體系。

一、系統架構

整個系統會由三部分組成,如下


二、細節

1、前端

前端這裡是一個純前端的專案,使用webpack打包後就只有一些js/css等靜態檔案。

開發語言與框架

vue+webpakc+axios

部署方式

靜態js/css/html檔案直接部署到ngnix所在機器的一個目錄,然後ngnix設定對映到該目錄

技術難點

跨域帶cookies,跨域cookies共享

解決方法

前臺使用fetch/axios請求ajax都可以設定允許跨域帶cookies,同時中臺也要設定可以跨域。針對cookie共享的問題,可以將cookie寫到根域名之下。

2、中臺

中臺是一個war包專案,直接放到tomcat下面就行

開發語言

Java+springMvc+spring+Dubbo+Tomcat

部署方式

將工程打包成war包,部署到tomcat之上,注意這裡的war包是沒有頁面的,它只是為上面1中的前端工程提供ajax請求的地址

技術難點

方案比較成熟,無技術難點

3、後臺

後臺是一個純後臺專案,用java語言

開發語言

Java+Spring+Mybatis+Dubbo

部署方式

打一個配置分離的包,包含lib、conf、bin三個目錄。使用dubbo啟動指令碼來啟動為中颱提供服務(參考筆者的這個文章:Dubbo應用啟動與停止指令碼,超詳細解析)

技術難點

方案比較成熟,無技術難點

三、思考

其實,中臺的專案可以不用,只不過後臺的java介面要找到一個能直接http請求的方案。



相關文章