如何從傳統應用到雲應用平臺(JSAAS)

JSaaS如何支持傳統應用開發與雲應用開發

1. 傳統企業或單位信息化的現狀

傳統的企業應用開發已經持續了比較長的時間了,在中國有一定規模的企業,其信息化也實施了一段時間,因爲企業在生產經營過程中,不同的業務系統是根據其業務需求而逐步建立的,開始時,並沒有經過長遠規劃,因此,不同的信息系統是獨立的,這帶來一個不同系統之間是獨立並且信息不通。但當企業運作了一段時間後,其就通過信息化部門,逐步把這些信息通過接口開發、整合來實現,於是形成了如下的使用方式:
ent-info-truble

這種機制帶來的問題就是這些系統的維護成本很高,動一發會牽動全身,支持當企業不同增加子公司或子個機構使用,數據遷移、功能擴展、二次開發等都帶來很大的挑戰。

2. 互聯網下的企業應用開發模式

這幾年的移動互聯網的發展非常迅猛,遠超了人們的想像,企業的應用也不可避免受到越來越多的影響。於是更多的企業現在也嘗試把不是那麼重要的業務的信息化管理也往雲端遷移,而近幾年來更甚者,一些重要的銷費類管理系統也全力遷移至雲端應用來。
saas_cloud

雲計算正迫使應用開發者思考應用架構事宜,就像客戶端開發者面臨着從桌面應用到移動應用開發的巨大轉變一樣,服務器端開發者正經歷着類似的轉變,因爲他們需要開發雲應用。開發一款不是雲架構(即原生雲)的應用是沒辦法享有任何底層雲基礎設施的好處,這將導致運營成本的增加。對於開發者構建新的雲應用而言,在第一時間獲得正確的架構(避免昂貴的重新設計)是非常重要的。

2.1.新的應用層

從一些雲領導人(如Netflix、LinkedIn和Twitter)處可以很明顯的看到一個新的應用層架構已經出現了。新的應用層是由細粒性分佈服務集合而構成,沒有特定的狀態並可以獨立的向上或向下。快速的可伸縮性不是其唯一的好處,一個很受歡迎卻經常被忽略的好處是它爲企業小型團隊提供快速敏捷的獨立開發。該模型不僅使持續集成成爲可能,還能夠促進真正持續交付的軟件,使事情變得像canary發佈、A/B測試和發佈自動化一樣簡單。事實上,開發者已經在Netflix裏對如何取得持續交付應用遊刃有餘,並且也獲得了顯著的益處。

2.2.當前的選擇

對大多數在過去一年建立了大規模應用的企業來說,過渡到雲是一個巨大的挑戰。隨着顧客越來越適應雲計算,並接受基於雲的軟件交付(即SaaS),這些企業正面臨着兩個選擇:

將現有的應用遷移到雲;
重新爲雲構建當前應用;
這兩種選擇都有一些好處和挑戰。

遷移

將現有的應用在短期內遷移到顧客所需的雲地址,會導致一個重大的操作挑戰。多租賃將是一個關鍵的問題。在運營方面會出現幾個挑戰,包括:持續的支持、監控、軟件的升級和低效率的資源利用率。自動化可以幫助減輕這些挑戰帶來的負擔,然而當客戶羣的增長超過某個點時,自動化將很難實現操作的效率。所以這種方法需要企業在操作方面加大投資,因爲越來越多的人力物力用於項目運營和管理,而打破這一局面的方法則是高水平自動化的出現。

轉變

公司選擇重新設計現有的應用面臨着一些前期的挑戰,包括“陡峭的”學習曲線、在軟件開發中爲建立或選擇底層平臺而加大初始投資以及短期內現有客戶的潛在流失。致力於雲計算的公司可能還需要經歷文化和組織改變爲敏捷型並採用開發運營模式這個過程。不過從長遠來看,公司一旦戰勝了這些困難,迎接它們的則是顯著的好處。它們可以享受雲基礎設和交付模式的真正好處。由於更好的資源利用率和較小的投資操作,使得它們可以實現更大的運營效率。隨着它們的成長,這些公司還將受益於更大的規模經濟。

 

3. 那麼如何讓傳統的企業與雲端的應用實現業務一體化

企業的CTO都在思考一個問題,就是未來公司的業務哪一些系統是可以放到雲端來運行的,並且又是如何爲公司業務提供服務的,並且如何通過一體化的平臺業務來實現這個目標。

而傳統的舊的業務又是如何往雲端遷移的?

flow-one

JSAAS是全新的開發框架,可適合傳統的私有云業務管理,也可以適應雲端的業務管理,支持多機構的應用方式,讓你的業務可與合作伙伴分享與成長。Jsaas是如何從傳統的業務管理過渡到平臺的運行架構,並且實現全方位的支持的。

4.示例

以下是以一個公司的業務場景爲例子,說明如何從傳統的應用設計轉至平臺的運營場景,以此來說明如何通過JSAAS平臺實現各種業務場景。

 應用場景

某集團公司下有三家子公司,分別經營着房產、影視、餐飲三個不同的行業,現集團公司需要開發一套客戶營銷系統,分別管理其下不同子公司的會員及業務。其架構如下所示:
archives

4.1. 單應用獨立架構模式–數據獨享

集團公司及其下的子公司獨立進行業務經營,財務獨立結算,因此會員營銷系統是分開的,即每個子公司及總公司均部署一套獨立的系統,我們把這種系統稱爲單機構應用。其管理模式如下:
layer1

【說明】

即每個系統是獨立的,JSaaS可以把這種應用部署在內網,也可以部署在雲端,每個子公司單獨使用,其數據是獨立的,即獨立的數據庫,獨立的文件管理,甚至是獨立的服務器。這種方式就是系統需要由每個子公司自身或由集團統一來管理,優點是數據安全性好,備份容易,缺點是管理成本高。

4.2. 單應用集中部署模式數據共享

集團公司想實時瞭解每個子公司的會員營銷情況的數據,同時希望每個子公司只能管理自身的會員信息等,這時我們部署一套會員營銷系統即可,同時提供給集團、三個子公司同時使用,我們稱這種爲多機構應用。
layer2

【說明】

這種應用場景是用戶適合於需要進行分支機構的數據彙總的管理功能使用,應用場景很廣,一般有分支連鎖機構均適用,其實現的方式就是數據庫的表是共享的,通過在表中增加機構字段進行數據隔離,而需要進行數據彙總時,所有的數據均在同一表中,數據過濾及查詢等都是高效的,缺點很也是明顯的,當機構比較多,每個業務的數據比較多時,表很的數據會爆漲,這將會對後續的查詢性能帶來挑戰。JSAAS天生支持這種數據結構,即我們要求在設計每個業務功能模塊時,其表字段都需要增加機構的ID,以支持數據共享,而業務分離的特性,而一般的數據過濾,平臺框架提供了支持,以使得開發人員像開發傳統應用一樣開發功能即可。

4.3. 單應用集中部署數據分離

集團公司在使用該系統時,發現其確實管理比較方便,並且與其有業務來往的合作伙伴也有類似的業務管理需求,於是也想部署給他們用,同時只收取一些服務費用,但合夥伴的數據量也是有點大,使用時,建議獨立數據庫。於是集團想了如下辦法:
layer3

【說明】

這種應用場景是所有的子公司使用的業務幾乎是一樣的,所以應用程序是獨立的,但要求數據是獨立,並且可以自己定時備份數據,優點是程序統一更新,數據庫是分離的,這種情況要保證事務相對困難,因爲是跨庫操作,每個子公司需要一個獨立的事務管理器。當分支機構比較多的時候,並且是動態時,這種需方式帶來的管理成本是顯式增加的。JSAAS可以通過在XML文件中獨立配置不同的操作庫來達到這個要求。

4.4. 大規模租戶部署—數據共享與分離共存

集團公司發現這個系統在不同的行業領域中都有着不同的應用,於是思考是否可以把這個應用做成雲平臺,供有需要的企業或機構在線註冊並且付費使用,但不同的企業規模不一樣,因此在分配軟硬件資源上有所不同,於是設計如下,把資源利用到最大化。
layer5

【說明】

要把這個應用場景推廣至更多的人來使用,並且支持不同的機構在線註冊並且實現在線配置使用,這時我們需要最大化利用平臺的軟硬件資源,以使可支持更多的租戶。由於面向的客戶是中小企業或中大規模的企業,所以平臺爲租戶的部署上我們需要根據不同的企業的規模來決定分配的服務器、數據庫。而統一平臺對外後,需要根據租戶的域名進行負載均衡。

如A企業的規模比較小,如100人以內,即可以讓它採用物理表的數據共享模式,B企業的規模比較大,規模10000人以上,則可以用傳統的方式處理,即後臺的數據單獨集羣,應用程序也獨立集羣,從而支持更大的併發。所以平臺需要在前臺那裏加多一層負載均衡器以支持用戶的租戶的訪問。

JSAAS原生的已經支持第一種模式與第二種模式,而混合式的實現則需要加多一層租戶的數據均衡器的處理,以根據租戶的域名來進行服務器的分離訪問。

 

4.5. 多機構系統應用部署結構演變彙總

以下圖可以形象描述平臺如何支持不同的組織架構的數據存儲方式,以適應不同的用戶的組織架構及數據規模的要求。
layer7

 

5.多機構與SAAS的關係

5.1. 什麼是多機構?

在本文檔中指一家企業下有多個獨立法體的企業或單位,也指多個使用平臺的不同企業或機構.

5.2. 什麼是SAAS

SaaS(Software as a Service),軟件即服務。提供雲端的應用服務,ERP、HR、CRM等在線系統,每個賬戶或者每家公司有獨立的數據存儲,通過賬戶進行權限和訪問隔離,知名廠商有Salesforce、Successfactor、Zendesk等;

【總結】一般我們說的SAAS模式,就是指軟件平臺對多個機構或單位同時提供在線的企業服務的支持。

6. JSAAS多機構應用的支持

6.1. 開放機構註冊功能

平臺可作爲雲端應用,開放給企業進行註冊,並且通過郵件進行激活,同時獲得登錄平臺及使用平臺的權限。開通訪問後的企業,可在平臺上進行組織架構的配置,從而支持這個機構使用平臺的能力。
ent-reg2
【企業註冊】
dimension-config
【組織配置】

 

7.JSAAS對組織架構的靈活支持

7.1.組織維度及組管理

每個機構可以構建其對應的組織維度及人員的關係。平臺允許多個組織機構同時使用,若爲單機構使用,即只需要配置平臺機構即可。若需要爲多機構使用,則允許添加多個子機構。

mul-orgdimension

7.2.用戶與組關係靈活定義

org-relation

8. JSAAS功能開發對多機構的支持

8.1. 數據級別的SAAS支持

  • 分支機構字段標識隔離小規模數據量
  • 獨立數據庫方式隔離中小量機構業務數據
  • 混合式方式支持大規模不同機構的業務數據

8.2. 應用級別的SAAS支持

  • 子系統的SAAS屬性可配置化支持
  • 功能菜單的SAAS屬性配置支持

subsytem

menu-mgr

子系統與菜單均可以通過配置是否爲SAAS訪問方式,以決定是否開放給平臺下的租戶機構來使用。

9.JSAAS的使用場景示例

9.1. 示例一、廣告平臺

案例1: 某廣告平臺商,其有大量的線下廣告屏的供應商,平臺商通過向供應商租用屏,向終端客戶提供廣告展示業務

ad-platform

平臺機構有:廣告平臺商(運營),廣告屏供應商,企業用戶。
從開發上,功能可放在一起開發,只需要通過機構進行數據過濾及子系統、功能是否開放即可。

9.2. 示例二、商場統一平臺應用

某大型商場想改變傳統的收取租金的營運方式,借用移動互聯網趨勢,幫忙商場的實體店開通網上銷售、線下銷售、支付、會員營銷一體化的功能,允許每個商家入駐並使用商場提供的這個應用平臺。從這種方式,可以通過藉助JSAAS配置及開發以下應用平臺即可。如可以快速通過配置及開發,即可提供:

  • 平臺運維管理系統
  • 商戶銷售及管理系統

其使用機構如下所示:
jsaas-org

這時不斷加進商家來使用該平臺,也是容易的。

 

10.JSAAS默認功能模塊

爲了讓JSAAS更多可以更多支持傳統的企業應用或二次開發功能,從而可以分配給更多的機構使用,即以此形成一個共享的系統管理的資源,從而爲企業減少業務管理的信息化投入,同時也爲使用JSAAS的開發商可以更高效開發、獲得後續可觀、可持續的收入。

平臺由三大部分組成:

  1. 門戶管理
  2. 業務應用功能(如文檔管理)
  3. 系統基礎功能(流組織架構管理、流程管理、表單管理、任務調度管理等)

jsaas-function

項目交流,需求評估,方案學習,都可以諮詢,

承接各種項目,

諮詢QQ:1361783075

添加QQ,可以獲得DEMO,操作手冊,瞭解學習。謝謝

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章