AOSuite 是我在 2006 - 2016 年間開發(fā)和維護(hù)的一節(jié)開源項(xiàng)目甲献。那還是一個(gè) jQuery UI 和 ExtJS 橫行的年代≡诅停現(xiàn)在想來還滿滿都是回憶。隨著前端技術(shù)的發(fā)展和后端微服務(wù)技術(shù)的流行,AOSuite 到了該退場的時(shí)候了慨灭。撰寫此文僅做備忘和回憶往年往事了朦乏。
簡介
AOSuite 開發(fā)套件基于 JavaEE 技術(shù)體系,以“標(biāo)準(zhǔn)功能可復(fù)用氧骤、通用模塊可配置呻疹、行業(yè)需求快速開發(fā)、異構(gòu)系統(tǒng)無縫集成”為目標(biāo)语淘, 幫助企業(yè)落實(shí)IT策略诲宇、屏蔽技術(shù)壁壘,快速實(shí)現(xiàn)可水平擴(kuò)展的高性能高可用業(yè)務(wù)愿景惶翻。 為傳統(tǒng)軟件企業(yè)和互聯(lián)網(wǎng)企業(yè)研發(fā)團(tuán)隊(duì)提供高效可控姑蓝、隨需應(yīng)變、快速實(shí)現(xiàn)業(yè)務(wù)需求的全棧式技術(shù)解決方案吕粗,以最低成本和最低風(fēng)險(xiǎn)獲得更高質(zhì)量纺荧、更快交付業(yè)務(wù)和運(yùn)維支持的核心技術(shù)競爭力。項(xiàng)目封印歸檔地址:https://gitee.com/pulanos/AOSuite颅筋。
適用場景
AOSuite 以開發(fā)傳統(tǒng)應(yīng)用系統(tǒng)為主并一定程度兼顧了互聯(lián)網(wǎng)應(yīng)用場景的需求宙暇,適合構(gòu)建和開發(fā)中大型企業(yè)應(yīng)用管理系統(tǒng)、各級政務(wù)信息化系統(tǒng)议泵、銀行保險(xiǎn)醫(yī)療等傳統(tǒng)行業(yè)管理系統(tǒng)占贫;也具備構(gòu)建基于(移動(dòng))互聯(lián)網(wǎng)面向C端的各類電商、P2P 網(wǎng)貸先口、理財(cái)型奥、小貸、社交等 APP 后端接口服務(wù)碉京、面向B端的商戶管理系統(tǒng)厢汹、 面向運(yùn)營企業(yè)的后臺(tái)管理系統(tǒng)。
技術(shù)特點(diǎn)
ExtJS without JS谐宙。平臺(tái)缺省主題主要依賴 ExtJS 庫烫葬,但經(jīng)過了深度封裝和 JSP 自定義標(biāo)簽化,可使得開發(fā)人員脫離繁瑣的 Html凡蜻、CSS搭综、JS 編程也能開發(fā)出標(biāo)準(zhǔn)化的風(fēng)格界面、使用統(tǒng)一的組件事件響應(yīng)模型咽瓷。
原生支持集群部署模式设凹。拋棄 Servlet 容器會(huì)話依賴,使用 Redis 集中模式的請求狀態(tài)管理使得平臺(tái)對集群部署結(jié)構(gòu)非常友好茅姜,達(dá)到單體應(yīng)用的高性能和高可用集群部署方案的最佳實(shí)踐。
核心依賴主流經(jīng)典正統(tǒng)。核心依賴使用 SpringMVC-MyBatis 的組合钻洒,主流奋姿、經(jīng)典、正統(tǒng)素标,開發(fā)人員積累儲(chǔ)備的經(jīng)驗(yàn)技能可以得到最大化的復(fù)用和升值称诗。
大量模版代碼自動(dòng)生成。
完善的權(quán)限管理系統(tǒng)头遭。平臺(tái)內(nèi)置完善的權(quán)限管理系統(tǒng)寓免,涵蓋用戶、部門计维、資源袜香、監(jiān)控等系統(tǒng)管理模塊開箱即用,大大節(jié)約開發(fā)成本鲫惶,讓開發(fā)人員專心于具體業(yè)務(wù)實(shí)現(xiàn)蜈首。
長期實(shí)踐,久經(jīng)考驗(yàn)欠母。平臺(tái)已在各行業(yè)各類型項(xiàng)目經(jīng)過大量的實(shí)戰(zhàn)檢驗(yàn)欢策。雖已久經(jīng)考驗(yàn),規(guī)避了大小坑無數(shù)赏淌。但踩寇,我相信總有一個(gè)還屬于你......
歷史局限性
關(guān)于前端。目前基于 ExtJS 的 AOSUI 標(biāo)簽庫所帶來一致的界面風(fēng)格和交互體驗(yàn)以及容易上手快速開發(fā)的特點(diǎn)一直是我們的優(yōu)勢六水,加之多年來我們在這套前端 UI 體系上已經(jīng)有了大量的經(jīng)驗(yàn)和積累俺孙。但其劣勢也是明顯的,比如視覺體驗(yàn)相對傳統(tǒng)古板缩擂,不善于開發(fā)一些脫離標(biāo)準(zhǔn)模版而隨意定制的復(fù)雜或非標(biāo)準(zhǔn)界面等鼠冕。
關(guān)于后端。AOSuite目前后端結(jié)構(gòu)為集中式單體應(yīng)用的開發(fā)模式胯盯,對于分布式的支持可以使用反向代理軟負(fù)載機(jī)制部署多個(gè)單體集群節(jié)點(diǎn)實(shí)現(xiàn)一定程度的高性能和高可用懈费。這種模式在服務(wù)治理如服務(wù)模塊化、服務(wù)注冊博脑、服務(wù)發(fā)現(xiàn)憎乙、服務(wù)管理監(jiān)控、彈性容量規(guī)劃叉趣、靈活擴(kuò)展性等方面并非很友好泞边。
發(fā)展方向
鑒于上述局限性,加之近年來疗杉,各種前端技術(shù)琳瑯滿目層出不窮阵谚;后端微服務(wù)技術(shù)趨于成熟蚕礼,dubbo 之類的分布式服務(wù)治理框架得到廣泛使用,spring cloud 也開始流行梢什;云計(jì)算深入人心奠蹬,云端技術(shù)得到普遍認(rèn)可和接受。正所謂這是一個(gè)最壞的時(shí)代嗡午,技術(shù)的發(fā)展和革新囤躁,不得不隨時(shí)要刷新我們的技術(shù)棧、系統(tǒng)架構(gòu)荔睹、開發(fā)方法狸演、部署運(yùn)維方式等;但換一個(gè)角度看僻他,這也是一個(gè)最好的時(shí)代宵距。在苦于變化的同時(shí),也讓我們具備了更多的技術(shù)手段中姜、方法來解決更多的問題消玄,擴(kuò)展我們的想象空間。因此丢胚,我決定結(jié)束 AOSuite 生命周期翩瓜,于現(xiàn)在主流前后端技術(shù)棧重構(gòu)一個(gè)新的開源項(xiàng)目 —— 盤古開發(fā)框架,歡迎大家圍觀携龟。
我的十年開源圖鑒
碼農(nóng)大熊博客:https://xiongchun.pulanit.com