實(shí)現(xiàn)大規(guī)模用戶同時(shí)登錄的SaaS服務(wù)系統(tǒng)及其方法
【專(zhuān)利摘要】本發(fā)明涉及云計(jì)算領(lǐng)域,尤其是一種實(shí)現(xiàn)大規(guī)模用戶同時(shí)登錄的SaaS服務(wù)系統(tǒng)及其方法。本發(fā)明系統(tǒng)由單點(diǎn)登錄并發(fā)集群、公共庫(kù),應(yīng)用服務(wù)器集群、業(yè)務(wù)應(yīng)用服務(wù)器集群及數(shù)據(jù)庫(kù)集群構(gòu)成;通過(guò)負(fù)載均衡,分布式技術(shù)實(shí)現(xiàn)應(yīng)用服務(wù)器的集群部署;通過(guò)讀寫(xiě)分離技術(shù)、數(shù)據(jù)庫(kù)獨(dú)立分庫(kù)實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的集群部署。本發(fā)明解決了大規(guī)模用戶同時(shí)登錄和訪問(wèn)、存儲(chǔ)業(yè)務(wù)數(shù)據(jù)的問(wèn)題;可以用于SaaS服務(wù)模式大并發(fā)處理上。
【專(zhuān)利說(shuō)明】實(shí)現(xiàn)大規(guī)模用戶同時(shí)登錄的SaaS服務(wù)系統(tǒng)及其方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及云計(jì)算領(lǐng)域,尤其是一種實(shí)現(xiàn)大規(guī)模用戶同時(shí)登錄的SaaS服務(wù)系統(tǒng) 及其方法。
【背景技術(shù)】
[0002]云計(jì)算(CloudComputing)是虛擬化(Virtualization)、效用計(jì)算(Utility Computing)、IaaS(基礎(chǔ)設(shè)施即服務(wù))、PaaS(平臺(tái)即服務(wù))、SaaS(軟件即服務(wù))等概念混 合演進(jìn)并躍升的結(jié)果。云計(jì)算表述了一種新的計(jì)算模式:應(yīng)用、數(shù)據(jù)和IT資源以服務(wù)的方 式通過(guò)網(wǎng)絡(luò)提供給用戶使用。
[0003]SaaS即Software-as-a-service,意思是軟件即服務(wù),是基于互聯(lián)網(wǎng)提供軟件服 務(wù)的軟件應(yīng)用模式,因此需要提供解決大并發(fā)的軟件服務(wù)。
[0004]目前面臨的主要問(wèn)題有:
[0005] 1、SaaS軟件缺少有效的支持并發(fā)的方法,無(wú)法支撐大規(guī)模并發(fā)訪問(wèn)。
[0006] 2、SaaS商業(yè)模式的并發(fā)問(wèn)題,一直是技術(shù)開(kāi)發(fā)領(lǐng)域熱門(mén)的話題,但是真正處理好 并發(fā)問(wèn)題的公司寥寥無(wú)幾,特別是無(wú)法解決大規(guī)模用戶登錄帶來(lái)的并發(fā)和數(shù)據(jù)讀取與存儲(chǔ) 的并發(fā)。
【發(fā)明內(nèi)容】
[0007] 本發(fā)明解決的技術(shù)問(wèn)題之一在于提供一種實(shí)現(xiàn)大規(guī)模用戶同時(shí)登錄的SaaS服務(wù) 系統(tǒng),解決了大規(guī)模用戶同時(shí)登錄SaaS軟件服務(wù)帶來(lái)的并發(fā)問(wèn)題。
[0008] 本發(fā)明解決的技術(shù)問(wèn)題之二在于提供一種SaaS服務(wù)系統(tǒng)實(shí)現(xiàn)大并發(fā)的方法,解 決大規(guī)模用戶同時(shí)登錄SaaS軟件服務(wù)帶來(lái)的并發(fā)問(wèn)題。
[0009] 本發(fā)明解決上述技術(shù)問(wèn)題之一的技術(shù)方案是:
[0010] 所述的系統(tǒng)由單點(diǎn)登錄并發(fā)集群、公共庫(kù)、應(yīng)用服務(wù)器集群、業(yè)務(wù)應(yīng)用服務(wù)器集群 及數(shù)據(jù)庫(kù)集群構(gòu)成;
[0011] 所述的單點(diǎn)登錄并發(fā)集群,核心是CAS認(rèn)證中心和LDAP目錄服務(wù),CAS認(rèn)證中心 實(shí)現(xiàn)統(tǒng)一用戶認(rèn)證,為用戶登錄多應(yīng)用系統(tǒng)提供統(tǒng)一的入口;LDAP目錄服務(wù),實(shí)現(xiàn)人員組 織架構(gòu)存儲(chǔ),通過(guò)軟件的方式實(shí)現(xiàn)CAS認(rèn)證中心的負(fù)載均衡;通過(guò)分布式部署LDAP目錄服 務(wù),實(shí)現(xiàn)多個(gè)LDAP服務(wù)的用戶數(shù)據(jù)的同步;
[0012] 所述的公共庫(kù),通過(guò)讀寫(xiě)分離技術(shù)實(shí)現(xiàn)對(duì)公共庫(kù)的分發(fā)訪問(wèn);用于存儲(chǔ)所有用戶 的公共信息,主要存儲(chǔ)用戶名、密碼、企業(yè)編號(hào)、子數(shù)據(jù)庫(kù)IP及連接字符串等信息;及用來(lái) 驗(yàn)證用戶登錄的合法性,判斷登錄用戶的身份信息;
[0013] 所述的應(yīng)用服務(wù)器集群和業(yè)務(wù)應(yīng)用服務(wù)器集群,通過(guò)多臺(tái)服務(wù)器基于軟件方式實(shí) 現(xiàn)SaaS軟件應(yīng)用的負(fù)載均衡;
[0014] 所述的數(shù)據(jù)庫(kù)集群,其中每個(gè)企業(yè)庫(kù)代表一家企業(yè),用來(lái)存儲(chǔ)該用戶的用戶數(shù)據(jù) 和生產(chǎn)數(shù)據(jù),每個(gè)數(shù)據(jù)庫(kù)相互獨(dú)立,實(shí)現(xiàn)一家企業(yè)訪問(wèn)時(shí)僅訪問(wèn)自己企業(yè)的數(shù)據(jù)庫(kù),不會(huì)給 其他企業(yè)用戶訪問(wèn)帶來(lái)影響。
[0015] 本發(fā)明解決上述技術(shù)問(wèn)題之二的技術(shù)方案是:
[0016] 所述系統(tǒng)登錄步驟包括:
[0017] 步驟一,用戶提交訪問(wèn)請(qǐng)求;
[0018] 步驟二,系統(tǒng)接受請(qǐng)求,把請(qǐng)求分發(fā)到單點(diǎn)登錄并發(fā)集群登錄界面;
[0019] 步驟三,用戶輸入用戶名、密碼,提交登錄請(qǐng)求;
[0020] 步驟四,登錄請(qǐng)求被實(shí)現(xiàn)了負(fù)載均衡的CAS認(rèn)證中心,根據(jù)負(fù)載情況自動(dòng)分發(fā)到 空閑的應(yīng)用服務(wù)器登錄;
[0021] 步驟五,應(yīng)用服務(wù)器根據(jù)配置的規(guī)則自動(dòng)從LDAP集群中讀取用戶信息;
[0022] 步驟六,用戶名、密碼正確,登錄成功;如用戶名、密碼不正確則重復(fù)前述步驟;
[0023] 所述系統(tǒng)的業(yè)務(wù)數(shù)據(jù)訪問(wèn)和存儲(chǔ)步驟如下:
[0024] 步驟一,用戶名、密碼通過(guò)驗(yàn)證;
[0025] 步驟二,訪問(wèn)應(yīng)用服務(wù)器集群;
[0026] 步驟三,應(yīng)用服務(wù)器請(qǐng)求公共庫(kù)獲取得到用戶所屬企業(yè)庫(kù)所在的IP地址和數(shù)據(jù) 庫(kù)連接字符串;
[0027] 步驟四,用戶根據(jù)得到的IP和數(shù)據(jù)庫(kù)連接字符串,通過(guò)企業(yè)業(yè)務(wù)集群訪問(wèn)相應(yīng)的 企業(yè)數(shù)據(jù)庫(kù);
[0028] 步驟五,用戶訪問(wèn)業(yè)務(wù)應(yīng)用服務(wù)器集群,業(yè)務(wù)應(yīng)用服務(wù)器集群負(fù)載均衡后再一次 分發(fā)用戶訪問(wèn);
[0029] 步驟六,應(yīng)用服務(wù)器訪問(wèn)數(shù)據(jù)庫(kù)集群。
[0030] 所述的LDAP是一種層次型數(shù)據(jù)庫(kù),按照樹(shù)型結(jié)構(gòu)組織信息,對(duì)瀏覽和查找目錄及 讀取內(nèi)容進(jìn)行優(yōu)化。
[0031] 本發(fā)明由單點(diǎn)登錄并發(fā)集群CAS認(rèn)證中心實(shí)現(xiàn)統(tǒng)一用戶認(rèn)證,為用戶登錄多應(yīng)用 系統(tǒng)提供統(tǒng)一的入口;LDAP目錄服務(wù),實(shí)現(xiàn)人員組織架構(gòu)存儲(chǔ),通過(guò)軟件的方式實(shí)現(xiàn)CAS認(rèn) 證中心的負(fù)載均衡,通過(guò)分布式部署LDAP目錄服務(wù),實(shí)現(xiàn)多個(gè)LDAP服務(wù)的用戶數(shù)據(jù)的同 步。公共庫(kù),通過(guò)讀寫(xiě)分離技術(shù)實(shí)現(xiàn)對(duì)公共庫(kù)的分發(fā)訪問(wèn)。應(yīng)用服務(wù)器集群和業(yè)務(wù)應(yīng)用服 務(wù)器集群,都是通過(guò)多臺(tái)服務(wù)器基于軟件方式實(shí)現(xiàn)SaaS軟件應(yīng)用的負(fù)載均衡。數(shù)據(jù)庫(kù)集 群,其中每個(gè)企業(yè)庫(kù)代表一家企業(yè),用來(lái)存儲(chǔ)該用戶的用戶數(shù)據(jù)和生產(chǎn)數(shù)據(jù),每個(gè)數(shù)據(jù)庫(kù)相 互獨(dú)立,也就實(shí)現(xiàn)了一家企業(yè)訪問(wèn)時(shí),僅訪問(wèn)自己企業(yè)的數(shù)據(jù)庫(kù),不會(huì)給其他企業(yè)用戶訪問(wèn) 帶來(lái)影響。因此,本發(fā)明有效地解決了大規(guī)模用戶帶來(lái)的并發(fā)問(wèn)題。
【專(zhuān)利附圖】
【附圖說(shuō)明】
[0032] 下面結(jié)合附圖對(duì)本發(fā)明進(jìn)一步說(shuō)明:
[0033]圖1是本發(fā)明結(jié)構(gòu)框圖;
[0034] 圖2是公共庫(kù)企業(yè)表;
[0035] 圖3是公共庫(kù)用戶表。
【具體實(shí)施方式】
[0036] 如圖1所示,本發(fā)明的具體步驟為:
[0037] -、登錄并發(fā)步驟
[0038] 1)大規(guī)模用戶提交訪問(wèn)請(qǐng)求。
[0039] 2)系統(tǒng)接受請(qǐng)求,把請(qǐng)求分發(fā)到單點(diǎn)登錄并發(fā)集群登錄界面。
[0040]3)用戶輸入用戶名、密碼,提交登錄請(qǐng)求。
[0041] 4)登錄請(qǐng)求被實(shí)現(xiàn)了負(fù)載均衡的CAS認(rèn)證中心,根據(jù)負(fù)載情況自動(dòng)分發(fā)到空閑的 應(yīng)用服務(wù)器登錄。
[0042] 5)應(yīng)用服務(wù)器然后根據(jù)配置的規(guī)則自動(dòng)從LDAP集群中讀取用戶信息,LDAP是一 種層次型數(shù)據(jù)庫(kù),按照樹(shù)型結(jié)構(gòu)組織信息,LDAP對(duì)瀏覽和查找目錄及讀取內(nèi)容進(jìn)行了專(zhuān)門(mén) 的優(yōu)化,具有非常好的讀取數(shù)據(jù)能力,比從關(guān)系型數(shù)據(jù)庫(kù)讀取數(shù)據(jù)快一個(gè)數(shù)量級(jí)。采取LDAP 作為單點(diǎn)登錄系統(tǒng)的認(rèn)證數(shù)據(jù)庫(kù),可以很好的處理大量用戶并發(fā)訪問(wèn),而目錄樹(shù)結(jié)構(gòu)也便 于對(duì)人員組織架構(gòu)的管理。
[0043] 6)用戶名、密碼正確,登錄成功。
[0044] 7)用戶名、密碼不正確重復(fù)1-6過(guò)程。
[0045] 二、業(yè)務(wù)數(shù)據(jù)訪問(wèn)和存儲(chǔ)的并發(fā)步驟
[0046] 1)用戶名、密碼通過(guò)驗(yàn)證。
[0047] 2)訪問(wèn)應(yīng)用服務(wù)器集群,應(yīng)用服務(wù)器集群是通過(guò)多臺(tái)服務(wù)器基于軟件方式實(shí)現(xiàn) SaaS軟件應(yīng)用的負(fù)載均衡。
[0048] 3)應(yīng)用服務(wù)器請(qǐng)求公共庫(kù)獲取得到用戶所屬企業(yè)庫(kù)所在的IP地址和數(shù)據(jù)庫(kù)連接 字符串。公共庫(kù)通過(guò)讀寫(xiě)分離技術(shù)解決訪問(wèn)的并發(fā)。其中公共庫(kù)用來(lái)存儲(chǔ)所有用戶的公共 信息,主要存儲(chǔ)用戶名、密碼、企業(yè)編號(hào)、子數(shù)據(jù)庫(kù)IP及連接字符串等信息,及用來(lái)驗(yàn)證用 戶登錄的合法性,判斷登錄用戶的身份信息。
[0049] 4)用戶根據(jù)得到的IP和數(shù)據(jù)庫(kù)連接字符串,通過(guò)企業(yè)業(yè)務(wù)集群訪問(wèn)相應(yīng)的企業(yè) 數(shù)據(jù)庫(kù)。
[0050] 5)用戶訪問(wèn)業(yè)務(wù)應(yīng)用服務(wù)器集群,業(yè)務(wù)應(yīng)用服務(wù)器集群通過(guò)多臺(tái)服務(wù)器基于軟件 方式實(shí)現(xiàn)SaaS軟件應(yīng)用的負(fù)載均衡再一次分發(fā)用戶訪問(wèn)。
[0051] 6)應(yīng)用服務(wù)器訪問(wèn)數(shù)據(jù)庫(kù)集群,其中每個(gè)企業(yè)庫(kù)代表一家企業(yè),用來(lái)存儲(chǔ)該用戶 的用戶數(shù)據(jù)和生產(chǎn)數(shù)據(jù),每個(gè)數(shù)據(jù)庫(kù)相互獨(dú)立,也就實(shí)現(xiàn)了一家企業(yè)訪問(wèn)時(shí),僅訪問(wèn)自己企 業(yè)的數(shù)據(jù)庫(kù),不會(huì)給其他企業(yè)用戶訪問(wèn)帶來(lái)影響,從而解決了數(shù)據(jù)庫(kù)訪問(wèn)的并發(fā)問(wèn)題。
[0052] 7)這樣用戶對(duì)業(yè)務(wù)數(shù)據(jù)訪問(wèn)和存儲(chǔ)只是針對(duì)本企業(yè)庫(kù)進(jìn)行操作,不會(huì)對(duì)其他企業(yè) 用戶帶來(lái)訪問(wèn)影響,解決了業(yè)務(wù)數(shù)據(jù)的訪問(wèn)和存儲(chǔ)的并發(fā)問(wèn)題。
[0053] -、本發(fā)明方法中公共庫(kù)具體描述如圖2,圖3;
[0054] 1)所述的公共庫(kù),通過(guò)讀寫(xiě)分離技術(shù)實(shí)現(xiàn)對(duì)公共庫(kù)的分發(fā)訪問(wèn)。
[0055] 2)圖2為公共庫(kù)企業(yè)表,主要存儲(chǔ)的是企業(yè)編號(hào)、企業(yè)名稱、域名、子數(shù)據(jù)庫(kù)IP及 連接字符串等信息,此處子數(shù)據(jù)庫(kù)IP及連接字符串DbConnectionStr采用加密方式存儲(chǔ), 其中域名相同的代表同一家企業(yè)。
[0056] 3)圖3為公共庫(kù)用戶表,主要存儲(chǔ)用戶名(郵箱)、密碼、企業(yè)ID。其中企業(yè)ID是 公共庫(kù)企業(yè)表的外鍵。
[0057] 4)當(dāng)用戶訪問(wèn)時(shí),輸入用戶名、密碼公共庫(kù)用戶表來(lái)驗(yàn)證用戶登錄的合法性,判斷 登錄用戶的身份信息。如果身份正確,通過(guò)用戶表中的企業(yè)ID查詢到企業(yè)庫(kù)中的子數(shù)據(jù)庫(kù) IP及連接字符串等信息。
[0058] 5)通過(guò)子數(shù)據(jù)庫(kù)IP及連接字符串等信息就可以訪問(wèn)企業(yè)業(yè)務(wù)數(shù)據(jù)庫(kù)。
[0059] 6)業(yè)務(wù)庫(kù)中冗余了一套自己的企業(yè)表和用戶表,每個(gè)企業(yè)在新增用戶的時(shí)候,也 會(huì)通過(guò)后臺(tái)服務(wù)程序把新增的用戶數(shù)據(jù),同步到公共企業(yè)表和用戶表中,這樣公共庫(kù)中存 儲(chǔ)著所有需要登錄用戶的信息。
[0060]二、LDAP、CAS的詳細(xì)描述
[0061] 1)根據(jù)公共庫(kù)的字段來(lái)構(gòu)造LDAP的Schema的結(jié)構(gòu)如下:
[0062]
[0063]
【權(quán)利要求】
1. 一種可實(shí)現(xiàn)大規(guī)模用戶同時(shí)登錄的SaaS服務(wù)系統(tǒng),其特征在于:所述的系統(tǒng)由單點(diǎn) 登錄并發(fā)集群、公共庫(kù)、應(yīng)用服務(wù)器集群、業(yè)務(wù)應(yīng)用服務(wù)器集群及數(shù)據(jù)庫(kù)集群構(gòu)成; 所述的單點(diǎn)登錄并發(fā)集群,核心是CAS認(rèn)證中心和LDAP目錄服務(wù),CAS認(rèn)證中心實(shí)現(xiàn) 統(tǒng)一用戶認(rèn)證,為用戶登錄多應(yīng)用系統(tǒng)提供統(tǒng)一的入口;LDAP目錄服務(wù),實(shí)現(xiàn)人員組織架 構(gòu)存儲(chǔ),通過(guò)軟件的方式實(shí)現(xiàn)CAS認(rèn)證中心的負(fù)載均衡;通過(guò)分布式部署LDAP目錄服務(wù),實(shí) 現(xiàn)多個(gè)LDAP服務(wù)的用戶數(shù)據(jù)的同步; 所述的公共庫(kù),通過(guò)讀寫(xiě)分離技術(shù)實(shí)現(xiàn)對(duì)公共庫(kù)的分發(fā)訪問(wèn);用于存儲(chǔ)所有用戶的公 共信息,主要存儲(chǔ)用戶名、密碼、企業(yè)編號(hào)、子數(shù)據(jù)庫(kù)IP及連接字符串等信息;及用來(lái)驗(yàn)證 用戶登錄的合法性,判斷登錄用戶的身份信息; 所述的應(yīng)用服務(wù)器集群和業(yè)務(wù)應(yīng)用服務(wù)器集群,通過(guò)多臺(tái)服務(wù)器基于軟件方式實(shí)現(xiàn) SaaS軟件應(yīng)用的負(fù)載均衡; 所述的數(shù)據(jù)庫(kù)集群,其中每個(gè)企業(yè)庫(kù)代表一家企業(yè),用來(lái)存儲(chǔ)該用戶的用戶數(shù)據(jù)和生 產(chǎn)數(shù)據(jù),每個(gè)數(shù)據(jù)庫(kù)相互獨(dú)立,實(shí)現(xiàn)一家企業(yè)訪問(wèn)時(shí)僅訪問(wèn)自己企業(yè)的數(shù)據(jù)庫(kù),不會(huì)給其他 企業(yè)用戶訪問(wèn)帶來(lái)影響。
2. -種權(quán)利要求1所述的SaaS服務(wù)系統(tǒng)的大并發(fā)方法,其特征在于:所述系統(tǒng)登錄步 驟包括: 步驟一,用戶提交訪問(wèn)請(qǐng)求; 步驟二,系統(tǒng)接受請(qǐng)求,把請(qǐng)求分發(fā)到單點(diǎn)登錄并發(fā)集群登錄界面; 步驟三,用戶輸入用戶名、密碼,提交登錄請(qǐng)求; 步驟四,登錄請(qǐng)求被實(shí)現(xiàn)了負(fù)載均衡的CAS認(rèn)證中心,根據(jù)負(fù)載情況自動(dòng)分發(fā)到空閑 的應(yīng)用服務(wù)器登錄; 步驟五,應(yīng)用服務(wù)器根據(jù)配置的規(guī)則自動(dòng)從LDAP集群中讀取用戶信息; 步驟六,用戶名、密碼正確,登錄成功;如用戶名、密碼不正確則重復(fù)前述步驟; 所述系統(tǒng)的業(yè)務(wù)數(shù)據(jù)訪問(wèn)和存儲(chǔ)步驟如下: 步驟一,用戶名、密碼通過(guò)驗(yàn)證; 步驟二,訪問(wèn)應(yīng)用服務(wù)器集群; 步驟三,應(yīng)用服務(wù)器請(qǐng)求公共庫(kù)獲取得到用戶所屬企業(yè)庫(kù)所在的IP地址和數(shù)據(jù)庫(kù)連 接字符串; 步驟四,用戶根據(jù)得到的IP和數(shù)據(jù)庫(kù)連接字符串,通過(guò)企業(yè)業(yè)務(wù)集群訪問(wèn)相應(yīng)的企業(yè) 數(shù)據(jù)庫(kù); 步驟五,用戶訪問(wèn)業(yè)務(wù)應(yīng)用服務(wù)器集群,業(yè)務(wù)應(yīng)用服務(wù)器集群負(fù)載均衡后再一次分發(fā) 用戶訪問(wèn); 步驟六,應(yīng)用服務(wù)器訪問(wèn)數(shù)據(jù)庫(kù)集群。
3. 根據(jù)權(quán)利要求2所述的SaaS服務(wù)系統(tǒng)的大并發(fā)方法,其特征在于:所述的LDAP是 一種層次型數(shù)據(jù)庫(kù),按照樹(shù)型結(jié)構(gòu)組織信息,對(duì)瀏覽和查找目錄及讀取內(nèi)容進(jìn)行優(yōu)化。
【文檔編號(hào)】H04L29/06GK104410604SQ201410591276
【公開(kāi)日】2015年3月11日 申請(qǐng)日期:2014年10月28日 優(yōu)先權(quán)日:2014年10月28日
【發(fā)明者】張來(lái)卿, 徐震宇, 孫傲冰, 季統(tǒng)凱 申請(qǐng)人:國(guó)云科技股份有限公司