1 引言
隨著軟件工業的迅速發展,實現各種功能的軟件層出不窮,企業可選擇的軟件產品也是琳瑯滿目。在信息社會下,企業為了經營需要,必須購買相應的專業軟件產品。為了支撐這些軟件的運行,企業除了需要添置個人電腦、服務器和網絡設備之外,往往還需要配備相關的IT系統維護人員。隨著企業的不斷成長壯大,業務需求越來越多并向精細化發展,傳統的IT系統不能再像以前那樣通過信息化為企業減少成本帶來價值,反而導致了IT系統不實用、管理困難、成本超支等問題。廣大的中小企業,面對傳統的軟件模式帶來的高昂支出望而卻步,不僅影響了自身的信息化發展,也使傳統軟件廠商的市場開拓陷入困境。而云計算的誕生,使整個IT產業重新找到了發展方向,在短短的兩三年間就產生了巨大的影響力。
云計算是一種企業基于互聯網獲取相關IT服務的增加、使用和交付的模式,企業可通過網絡以按需、易擴展的方式獲得所需IT服務。毫不夸張地說,現在全世界正在步入一個“云”的時代,硬件供應商、軟件開發商、系統集成商、服務提供商紛紛試水云計算領域,整個IT產業將面臨新一輪的洗牌和產業調整,這是讓所有IT人不斷創造、創新的一個大舞臺。
2 云計算服務層次簡述
云計算有3種服務層次:IaaS(基礎設施即服務)、PaaS(平臺即服務)、SaaS(軟件即服務),國內云計算的投入大多集中在IaaS及SaaS層面。SaaS的核心概念是軟件的服務化,即將軟件看作一種服務,而不是一種商品。SaaS軟件相對于傳統軟件,將原本由軟件使用者承擔的軟硬件、網絡、系統維護的費用,變為支付給SaaS服務提供商的租用費用。
SaaS軟件可給企業用戶帶來許多優點:無需安裝、拿來即用,用戶也無需維護;先天防毒,給用戶省去不少麻煩;使用風險較低,相對于傳統軟件的一次性投入,成本大大降低;只要有網絡的地方就可使用,而且用多用少完全由用戶自己決定。SaaS也給軟件商帶來了新的機遇,可以減少軟件商的銷售成本,還能降低維護軟件和客戶服務的成本。更重要的是,SaaS帶給軟件廠商一種穩健的商業經營模式,可以讓軟件商和客戶之間形成良性的循環,真正達到軟件開發商和軟件使用者雙贏的目標。
3 傳統軟件向SaaS軟件轉型的三步曲
傳統軟件向SaaS軟件轉型的過程中,遇到的重要挑戰就是多租戶的思維轉變。傳統軟件的銷售模式決定了軟件的每一個運行實例單獨服務于一個客戶,因此對于性能、可配置性、伸縮性方面的處理策略都是針對單一客戶設計的;而對于SaaS應用,為了最大化SaaS的規模效應,一般采用的都是多個租戶共享一個運行實例的架構,即多租戶架構。但是要將傳統軟件產品改造成具備可配置性、高性能和可伸縮性的高成熟度的SaaS應用,從開發成本、復雜性和團隊開發能力來考慮,并不是一件容易的事。
本文提出傳統軟件向SaaS軟件轉型的三步曲,進行分步式實施改造。
3.1 第一步,采用傳統軟件結合云計算IaaS的模式
現階段云計算尚屬新生事物,出于對安全性、保密性等因素的考慮,雖然對SaaS應用的需求很旺盛,但真正愿意馬上使用SaaS軟件來替代傳統應用的用戶并不多。在這種情況下,軟件服務提供商需要為每個客戶定制一套軟件,并為其部署在云端,每個客戶使用一個獨立的數據庫實例和應用服務器實例。通過云計算的IaaS服務,可以將硬件資源的利用最大化,降低硬件及運行維護成本。考慮到每個客戶都有定制化的需求,軟件的可配置性是這個階段需重點關注的,從數據、功能、界面、流程4個方面提供很好的可配置性,來適應各種不同類型的租戶的實際情況,見圖1:
圖1 傳統軟件“云化”三步曲之一:實現可配置性
為了更好地理解傳統軟件“云化”的三步曲,下面以一套傳統管理軟件的改造為例進行說明。
這套傳件在網絡互聯基礎上采用了先進的B/S架構,是一套可移植的、面向對象的Java語言開發的管理軟件。該軟件以企業內部作業鏈為主線,以人力資源管理、財務管理、供應鏈管理、審計管理為載體,整合、優化企業資源,構筑企業精確化管理的機制與平臺,滿足各級管理層精確化管理的需要,為企業運營決策提供數據支撐。正因為采用了先進的設計理念,本著開放性、先進性、靈活性、可靠性和安全性的設計原則,系統在可靠、高效的基礎上,具有較強的可配置性和擴展性。整個應用軟件的體系架構如圖2所示。
圖2 一套傳統軟件的應用體系架構
本套傳統軟件是在三層結構的基礎上設計而成的,三層結構技術將原來兩層結構中客戶端的大量事務處理邏輯或數據庫服務器上的存儲過程放到中間層來實現,從而減輕了客戶端和數據庫服務器端的負荷,保證了系統良好的擴充性和穩定性,并統一和規范了業務開發、管理和維護。
由于采用了分層的結構,在設計階段就充分考慮到系統的可配置性和可擴展性,所以這套傳統軟件要實現“云化”的第一步非常容易,除了做計費模式的改變(實現按需付費)外,應用架構上幾乎不需要變化。
3.2 第二步,實現多租戶單實例的應用架構
當租戶規模達到一定數量時,要發揮SaaS模式相對于傳統模式在降低成本方面的最大優勢,必須實現多租戶單實例的應用架構,這才是真正意義上的SaaS應用架構,也就是需要實施改造的第二步(圖3)。實現多租戶架構的關鍵是通過一定的策略來保證不同租戶間的數據隔離,確保不同租戶既能共享同一個應用的運行實例,又能為用戶提供獨立的應用體驗和數據空間。改造多租戶架構的方案有獨立數據庫、共享數據庫獨立數據結構、共享數據結構等,最常見的是共享數據結構的實現方法。
圖3 傳統軟件“云化”三步曲之二:實現多租戶單實例
本套軟件在進行了“云化”的第一步后,隨著租戶規模的增加,可通過增加租戶管理(包括注冊、訂購、計費等)和數據隔離(變更結構、增加租戶ID字段)來實現“共享數據庫,共享數據結構”的多租戶設計。
3.3 第三步,實現高性能應用
在實現了多租戶單實例的應用架構之后,隨著租戶數量的不斷增加,集中式的數據庫性能就將成為整個SaaS應用的性能瓶頸。如何通過一定的策略來滿足SaaS應用水平擴展的要求,成為SaaS應用架構設計需要解決的問題。即在用戶大量增加的情況下,無須更改應用架構,而僅需簡單增加硬件設備,就可以支撐應用規模的增長,這就是第三步所要致力解決的問題。
由于本套管理系統的架構采用了J2EE應用模式的三層架構,即前端是處理HTTP請求的HTTP服務器,中間是處理應用邏輯的應用服務器,而后端是實現數據存儲和交換的數據庫服務器;因此基于Apache的HTTP服務器,可以輕松實現負載均衡和集群。通過HTTP服務器的租戶管理,按照租戶的不同而實現服務請求的流量聚合和派發,將能實現在租戶粒度上的SLA(服務級別協議)管理,見圖4。
圖4 傳統軟件“云化”三步曲之三:實現高性能
4 結論
云計算給傳統IT帶來的最大變革是顛覆了現有的商業模式。傳統上,企業花錢購買軟件,雇傭專業的IT人員進行管理;而IT廠商則是面對面地向客戶推銷自己的產品。在“云時代”,IT廠商可打造一個云平臺,在這個平臺上提供豐富的信息服務供企業用戶選擇。無論是來自平臺商的還是第三方的信息服務,企業用戶都可以按需購買,而且價格一定比企業自建系統優惠,這就是所謂的“超市”模式。
通過“云化”三步曲改造后的管理系統可在云計算基礎設施(IaaS)的基礎上,向各類企業提供統一的“云門戶”,企業用戶可自由選購需要的信息服務,服務將包括財務管理、物流管理、人力資源管理、客戶管理等應用;從而按照不同類型租戶的實際要求,為租戶便捷地選取和組合模塊提供幫助,快速形成滿足企業信息化需求的開放式集成化SaaS管理系統;也可以在政府的鼓勵和政策扶持下,借助由電信公司、IT硬件廠商、軟件提供商聯合建設和運營的云計算中心,為當地幾百個中小企業乃至全國的企業用戶提供按需付費的云服務,降低中小企業信息化的門檻,提升中小企業的市場競爭力。
核心關注:拓步ERP系統平臺是覆蓋了眾多的業務領域、行業應用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業務管理理念,功能涉及供應鏈、成本、制造、CRM、HR等眾多業務領域的管理,全面涵蓋了企業關注ERP管理系統的核心領域,是眾多中小企業信息化建設首選的ERP管理軟件信賴品牌。
轉載請注明出處:拓步ERP資訊網http://m.hanmeixuan.com/
本文標題:傳統軟件邁向“云時代”之路