- 系統(tǒng)設(shè)計
整個電商系統(tǒng)是Client/Serve結(jié)構(gòu),IOS端直接和用戶打交道,后端處理用戶請求,完成對應(yīng)的邏輯。

Paste_Image.png
如圖所示,IOS端是基于蘋果cocoa框架開發(fā),采用Swift和Objective-C混編,后端Vapor服務(wù)器作為api接口服務(wù)器,開發(fā)語言為Swift,是RESTful模式的服務(wù)器。IOS和Vapor服務(wù)器采用https安全協(xié)議通訊,Vapor服務(wù)器除了處理請求外,還需要進行MySQL數(shù)據(jù)庫操作。最后對象存儲服務(wù)器用于存儲文件,這此項目中主要存儲對象是圖片。
- 系統(tǒng)部署設(shè)計
在完成基本的系統(tǒng)設(shè)計之后,還需要進行進一步部署的設(shè)計,以達到在實際環(huán)境中使用的需求。
Paste_Image.png
將系統(tǒng)設(shè)計進一步細化,整個系統(tǒng)的部署如圖所示,首先后端部署在騰訊云上,服務(wù)器的操作系統(tǒng)為Ubuntu14.04 64TLS。在此基礎(chǔ)上利用騰訊云的域名解析服務(wù),將域名和服務(wù)器IP地址綁定,以便在公網(wǎng)的環(huán)境下能夠通過域名地址訪問服務(wù)器。
之后是對服務(wù)器環(huán)境的搭建。首先一個需要Nginx服務(wù)器監(jiān)聽 80端口和443端口,并將所有80從端口進入的http請求重定向到443端口,實現(xiàn)所有的請求都是https的。在配置Nginx服務(wù)器作為Vapor服務(wù)器反向代理,端口號為3030,所有從客戶端發(fā)來的https://api.steambean.me/bee 的請求都將被分配到這個端口上,實現(xiàn)由Vapor服務(wù)器處理IOS客戶端程序發(fā)來的請求。
同時為了開發(fā)是方便查看管理數(shù)據(jù)庫,將MySQL數(shù)據(jù)庫的3366端口和映射到了Nginx服務(wù)器。 -
代碼管理
代碼管理采用github,過程如圖所示。
Paste_Image.png

