企業應用和互聯網應用從根本來說是相同的,都是基於因特網、HTTP、瀏覽器的一種應用,但面向的涉眾不一樣,從而導致些許差異性,比較如下:
企業應用:
1 行業領域 區分行業,各自領域業務背景不一樣,並形成了一定的門檻。
2 業務邏輯 業務邏輯復雜,涉及大量的數據和多人協同處理。
3 數據一致性 強調數據一致性,需要通過事務,交易中間件,數據庫鎖,java同步機制來保證數據的一致性。
4 數據復雜度 數據復雜,有大量的表,表之間有復雜的牽涉關系,在某些行業維護這些表之間的關系和數據就需要一個團隊。
5 並發量 不是特別大,比如通用應用為100~200並發,重度並發500的系統就能滿足國內大部分的系統要求。
6 系統集成 關鍵系統需要和很多外部系統集成,集成的方式可能采取esb,jms,web service,socket。
7 用戶交互 強調界面交互和數據表達,需要支持多種數據展現方式,需要眾多數據在頁面上的展現,傳輸
8 開發過程 強調軟件過程,講究行業經驗,需要撰寫大量的文檔和多人的協同,需要版本控制和問題跟蹤回溯。
互聯網應用:
1 行業領域 跨行業,按應用類型區分,比如blog,wiki,個人門店等。
2 業務邏輯 業務邏輯簡單,大部分是通過頁面進行數據的增刪改查。
3 數據一致性 要求有事務,但和高並發博弈中,讓位給高並發。
4 數據復雜度 數據不復雜,表之間的關聯不多
5 並發量 強調高並發,支持用戶數量多,並采取企業開發中極少采用的技術,比如web反向代理,memcache(分布式緩存),表的垂直分隔、水平分隔,強調高速讀低速寫。支持百萬用戶。
6 系統集成 弱。極少需要和其他系統集成
7 用戶交互 弱。交互不多,表現方式簡單,更多的是數據的增刪改查。
8 開發過程 強調敏捷,快速開發,基本不需要版本控制。
