Web全棧應用之旅-啓程篇

1、Web應用技術棧

在開發Web應用時,一般會使用到如下技術棧:前端


對應這些技術棧都已有相應的開源產品,能夠根據項目須要選擇適合的產品。

2、開源產品選型原則

開源產品選型主要考慮:java

  1. 適合本項目,如知足功能須要,開發者已有的技能儲備等。
  2. 活躍度高,發現問題開發團隊能及時解決。
  3. 已經有很多項目的成功經驗。

3、iTracker產品選型

iTracker是一個開源任務管理系統,目的是經過實際項目來使用和驗證以上技術棧, 同時也是一個培訓類Demo項目,你能夠經過follow Web應用全棧之旅的系列文章一塊兒參與學習。
iTracker選型以下:spring

4、前端選型

  1. 前端框架Vue.js,理由是:輕量,熱度高,熱度從慕課網培訓課程Vue和Angular的購買人數就能夠看出來。
  2. UI組件選擇餓了麼的Element UI,理由是:一次安裝使用成功,功可以用。
  3. 編輯器
    編輯器選型主要考慮因素有:
    1)是否支持直接拷貝富文本的中的圖片或者截屏後粘貼,能拷貝Word中的圖片和visio圖最佳。但能拷貝visio圖粘貼後不失真一般是收費富文本編輯器才具有的能力。
    2)是否支持編程語言高亮,例如按Java,C++語言高亮
    3)是否支持數學公式等等
    所以選擇了兩款富文本編輯器:
    1)wangEditor,支持截屏粘貼,當作Bug跟蹤系統時這個功能特別有用。
    2)Editor.md,支持編程語言高亮,支持數學公式。
  4. 圖表
    圖表組件不少,夠用就好。
    1)Echart,用於統計類圖表。
    2)d3,功能強大,彩虹圖,樹狀圖,在作調用鏈跟蹤類的應用中可使用。

5、後端選型

  1. Web框架
    沒有任何疑議選擇Spring。
  2. 工具包
    在實際開發過程當中可能用到不少工具包,例如支持後臺分頁的工具包PageHelper,例如雖然已有fastJSON來作json文本和對象的轉換,但有的場景會用到Gson,具體根據實際須要選擇。
  3. 配置中心
    雖然大多數配置均可以在spring的yml配置文件中完成,但當配置參數愈來愈多,又要區分不一樣環境時,經過配置中心來配置更方便一些,這裏選擇了攜程的Apollo配置中心。
  4. 緩存
    支持數據緩存, 分佈式緩存,能夠用來管理分佈式session,Rdeis足以勝任。
  5. 消息隊列
    幾個知名消息隊列工具,kafka,RocketMQ,RabbitMQ,在沒有確切的場景需求時,先簡單選擇一個開始吧。
  6. 搜索 因爲數據庫的模糊查詢效率低,同時也不可能不斷增長一個表的索引字段來知足查詢要求,所以一個搜索引擎是必要的,Elasticsearch能夠知足要求。

6、數據庫訪問選型

JPA代碼寫起來簡單,可是對於複雜查詢有些力不從心,因此仍是帶上mybatis吧。數據庫

7、數據庫選型

MySQL。編程

8、結語

學習在任何收開始都不晚,感興趣的話,一塊兒開始Web全棧之旅吧!json

end.後端


站點: javashizhan.com/緩存


微信公衆號:前端框架


加入知識星球,參與討論,更多實戰代碼分享!
t.zsxq.com/RNzfi2j微信

相關文章
相關標籤/搜索