揭秘JEPaaS低代碼架構系列之——2.平臺架構(低代碼平臺技術架構)
后臺反饋,有不少朋友對JEPaaS低代碼快速開發(fā)技術架構比較感興趣,今天我就發(fā)文解釋下我們JEPaaS低代碼快速開發(fā)平臺。
下圖是我們JEPaaS平臺的架構
JEPaaS平臺采用四層架構設計,分別是存儲層、平臺層、服務層、運營層。
整個PaaS體系可以基于公有云(阿里云、騰訊云、華為云)部署,也可采用私有云部署,在網絡條件允許的情況下,也可采用較為復雜的混合云部署。
存儲層:
基于硬件完成結構化數據或非結構化數據的存儲,支持關系型數據庫Orcacle、SQLServer、MySQL,以及非關系型數據庫 Momgo DB、Redis,并且支持國產數據庫如SequoiaDB。為了提高SaaS環(huán)境下的租戶數據的保密性和高可用性,我們通過“數據源引擎”為每個租戶開辟了一個專屬的數據庫空間。
平臺層:
整個平臺層是JEPaaS產品的基石,平臺層完成元數據的設計及結構關系的創(chuàng)建,完成數據的拉取及表格、表單、圖形的展示,完成菜單的設計、角色的創(chuàng)建、權限的分配等??蛻敉ㄓ闷脚_層提供的各種拖拽式、點選式的工具,即可輕松完成低代碼應用的搭建工作。
服務層:
應用系統(tǒng)能否快速的搭建靠的是平臺層的工具支撐,但是否可以SaaS化實現(xiàn)多租戶運營模式靠的是服務層的支撐。平臺把統(tǒng)一調度(JOB)、及時通訊(IM)、統(tǒng)一工作流配置(WF)等全部進行服務分離,最終完成平臺在統(tǒng)一多租戶(SaaS)服務的功能實現(xiàn)。
運營層:
運營層的核心服務是幫助用戶對已完成的SaaS產品進行劃分、軟件商店上架、租戶戲份權限劃分、監(jiān)控租戶的注冊量、使用頻度、計算出留存率等。并提供代金券、優(yōu)惠券等多種運營機制通過渠道商管理功能實現(xiàn)渠道商的分成與任務完成情況監(jiān)控工作。
技術是為了業(yè)務服務的,了解了業(yè)務后,我們再來看我們的技術框架圖。
下圖是我們JEPaaS平臺的技術架構圖
JEPaaS是以快速開發(fā)為中心
支持多種操作系統(tǒng),多種數據庫,屏蔽底層技術開發(fā)成本,降低企業(yè)信息化實施風險。
JEPaaS提供了多種引擎,用戶根據配置即可實現(xiàn)業(yè)務功能的快速定制及拓展。
- 提供了多種引擎,屏蔽了底層開發(fā)的成本。
- 提供了眾多插件,并且不斷完善,降低企業(yè)的集成成本。
- 提供了多種數據庫支持,已完成中標麒麟OS認證。
JEPaaS經過多個版本迭代,形成了自主的核心引擎,主要有:
- 資源表引擎
- 功能引擎
- 數據字典引擎
- 圖報表引擎
- 門戶引擎
- 調度引擎
- 流程引擎
- APP引擎
JEPaaS經過多個版本迭代,支持了眾多的第三方插件,主要有:
- 微信公眾號管理
- 微信企業(yè)號管理
- 釘釘第三方集成
- 短信集成
- IM即時通訊
- 第三方數據源
- PageOffice
- 郵箱
- 個推
JEPaaS經過多個版本迭代,支持多種數據庫廠商,主要有:
- MySQL
- SQLServer
- Oracle
- PostgreSQL
- 人大金倉
- 神通數據庫
JEPaaS經過多個版本迭代,支持多種操作系統(tǒng),主要有:
- Windows
- Linux(Redhat、Centos)
- 中標麒麟OS
JEPaaS應用
采用前后端分離技術架構,使用Token進行用戶統(tǒng)一認證。實現(xiàn)了多種引擎,提供可視化、腳本化的開發(fā)環(huán)境,用戶可以快速實現(xiàn)業(yè)務功能。
前端技術棧
- JS框架:jQuery、Vue
- UI框架:ElementUI
- 富文本編輯:UEditor
- 代碼編輯器:monacoEditor
- Socket通訊:Socket.IO、WebSocket
- 圖表組件:EChart
- 打印組件:Lodop
- APP JS框架:MUI、H5 、Vue
- APP UI框架:MUI、ElementUI
- Office組件:pageoffice
后端技術棧
- 核心框架:Spring Framework
- 安全框架:Spring security
- 視圖框架:Spring MVC
- 任務調度:Spring Task
- 緩存框架:Ehcache、Redis
- 日志管理:SLF4J、Logback
- 持久層框架:自主研發(fā)JEDB
- 服務端驗證:Hibernate Validator
- 工作流引擎:JBPM
- 數據庫連接:ALibaba Druid
JEAPP移動應用
JEPaaS提供了在線的App開發(fā)工具,使用配置方式可以快速開發(fā)出APP的多種功能,目前支持H5、Android、iOS。
即時通訊/推送
JEIM是一個基于Netty實現(xiàn)的穩(wěn)定高效的即時通訊服務,支持多種類型的信息溝通與用戶和社群管理,輕松建立實時的傳播矩陣,保證了信息交流的順暢和安全。
企業(yè)網盤
JE網盤服務是基于JEPaaS拓展的企業(yè)級網盤服務,用戶可以基于此服務快速拓展私有存儲,支持阿里云、七牛云。
API網關
JEGateway是一個基于OpenResty的API Gateway,提供API及自動移規(guī)則的監(jiān)控和管理,如訪問統(tǒng)計、流量切分、API重定向 、APi鑒權、WEB防火墻等功能,用戶可以基于Lua腳本拓展及自定義插件。