分布式會議系統(tǒng)前端部署的實(shí)現(xiàn)
論 文 摘 要在后PC 時(shí)代,物理位置并不重要了。傳統(tǒng)的辦公室軟件在后PC 時(shí)代有著明顯的軟肋,用戶習(xí)慣于使用多種操作系統(tǒng)及多種移動設(shè)備。在當(dāng)前的時(shí)代,在日常生活中需要能夠在任何地點(diǎn),任何時(shí)間能

論 文 摘 要
在后PC 時(shí)代,物理位置并不重要了。傳統(tǒng)的辦公室軟件在后PC 時(shí)代有著明顯的軟肋,用戶習(xí)慣于使用多種操作系統(tǒng)及多種移動設(shè)備。在當(dāng)前的時(shí)代,在日常生活中需要能夠在任何地點(diǎn),任何時(shí)間能夠進(jìn)行流暢的溝通,不單單只能用臺式機(jī)進(jìn)行工作學(xué)習(xí)等。基于云平臺的軟件對于隨時(shí)隨地地流通交流提供了可能性。這里我們主要想討論在分布式環(huán)境下,前端的軟硬件是如何部署的,以實(shí)現(xiàn)不同地域的人以較高的性能體驗(yàn)接入在線會議系統(tǒng)。
關(guān)鍵詞:網(wǎng)絡(luò)會議、Nginx 、Cisco ACE
宜順論文網(wǎng)www.13Lw.com
第 1 頁 共 14 頁
,
目 錄
一、網(wǎng)絡(luò)會議系統(tǒng)的介紹 . ............................................................................................................................ 3
(一)系統(tǒng)內(nèi)部分專業(yè)名詞解釋: ..................................................................................................... 3
二、網(wǎng)絡(luò)會議系統(tǒng)前端分布式部署 . ............................................................................................................ 4
(一)硬件需求: . ................................................................................................................................ 4
(二)軟件需求: . ................................................................................................................................ 4
(三)系統(tǒng)服務(wù) . .................................................................................................................................... 4
(四)前端系統(tǒng)邏輯拓?fù)浣Y(jié)構(gòu) ............................................................................................................. 5
(五)前端網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu) ..................................................................................................................... 6
(六)前端Nginx 配置 ......................................................................................................................... 7
(七)Tomcat 應(yīng)用配置 ........................................................................................................................ 9
(八)部分Nginx VIP配置 . ................................................................................................................. 9
(九)開源資源 . .................................................................................................................................. 12
(十)環(huán)境部署、運(yùn)維的一些說明 ................................................................................................... 12
三、參考文獻(xiàn): . .......................................................................................................................................... 13
宜順論文網(wǎng)www.13Lw.com
第 2 頁 共 14 頁
,
一、 網(wǎng)絡(luò)會議系統(tǒng)的介紹
用戶只需打開瀏覽器,即可實(shí)現(xiàn)實(shí)時(shí)進(jìn)行在線會晤、共享文檔、方案演示、應(yīng)用程序演示等功能。該系統(tǒng)主要用戶為大中小型企業(yè)用戶,也適用于個(gè)人用戶。

在上圖中,不同的物理地域里需要需要一套和多套不同的服務(wù)。這樣設(shè)計(jì)的目的是讓用戶在性能體驗(yàn)上達(dá)到最優(yōu)。北京的用戶訪問統(tǒng)一入口的URL 時(shí),數(shù)據(jù)中心的前端服務(wù)會在北京服務(wù)中心為其提供服務(wù),當(dāng)上海的用戶訪問統(tǒng)一入口的URL 時(shí),上海本地的數(shù)據(jù)中心前端服務(wù)為其提供服務(wù),不同的前端服務(wù)只會調(diào)用各自本的后端核心層服務(wù)。不同數(shù)據(jù)中心間的后端核心服務(wù)相互調(diào)用,這樣消息能夠在全系統(tǒng)內(nèi)(跨地域)相互同步。后端核心層服務(wù)的網(wǎng)絡(luò)由專線互聯(lián),這樣能訓(xùn)保證后端服務(wù)高效、穩(wěn)定的相互調(diào)用。
(一)系統(tǒng)內(nèi)部分專業(yè)名詞解釋:
1、Nginx :是一款輕量級的Web 服務(wù)器/反向代理服務(wù)器及電子郵件(IMAP/ POP3)
宜順論文網(wǎng)www.13Lw.com
第 3 頁 共 14 頁
,
代理服務(wù)器。
2、Tomcat :是jakarta 項(xiàng)目中的一個(gè)重要的子項(xiàng)目,它又是sun 公司官方推薦的servlet 和jsp 容器。
3、GSS :全球的地點(diǎn)選擇器(思科產(chǎn)品用于名字解析和網(wǎng)絡(luò)路由) 。為了幫助確保數(shù)據(jù)中心可用性,Cisco ACE GSS 裝置數(shù)據(jù)中心間的全局負(fù)載均衡和智能故障切換,以幫助確保業(yè)務(wù)連續(xù)性、全面的域名系統(tǒng)(DNS )和動態(tài)主機(jī)配置協(xié)議(DHCP )支持,并抵御基于DNS 的分布式拒絕服務(wù)攻擊。
4、ACE :(Application Control Engine )應(yīng)用控制引擎。適用于Cisco Catalyst? 6500的思科 應(yīng)用控制引擎模塊(ACE)系列產(chǎn)品提供了最高水平的應(yīng)用基礎(chǔ)設(shè)施控制能力、應(yīng)用性能、應(yīng)用安全性和基礎(chǔ)設(shè)施簡潔性。Catalyst 6500 交換機(jī)使用Cisco ACE (應(yīng)用控制引擎)服務(wù)模塊。ACE 服務(wù)模塊能夠?qū)崿F(xiàn)高達(dá)16 Gbps 的性能。ACE 服務(wù)模塊還可以通過SSL 加密/解密,以及雙向的內(nèi)容檢測來提供安全性。
5、VIP :虛擬IP 地址。如多個(gè)客戶端向這個(gè)虛擬IP 地址發(fā)出IP 請求,比如HTTP Get 請求。交換機(jī)會把這些請求分發(fā)(負(fù)載分擔(dān))到多臺服務(wù)器上。然后交換機(jī)根據(jù)多種因素來實(shí)施負(fù)載分擔(dān),比如TCP 和UDP 協(xié)議、負(fù)載和其他負(fù)載分擔(dān)參數(shù)。除此之外,有必要的話,交換機(jī)還會把客戶端發(fā)來的請求轉(zhuǎn)發(fā)給同一臺服務(wù)器,比如在使用FTP 時(shí),一個(gè)客戶端必須在整個(gè)回話或數(shù)據(jù)流過程中,與相同的服務(wù)器進(jìn)行通信。通常情況下,客戶端設(shè)備會使用DNS 來解析虛擬服務(wù)器IP 地址。
二、網(wǎng)絡(luò)會議系統(tǒng)前端分布式部署


(三)系統(tǒng)服務(wù)
整個(gè)系統(tǒng)體系服務(wù)大致分三層,分別是全局級別服務(wù),數(shù)據(jù)中心級別服務(wù),cluster 級別服務(wù)。
全局級別服務(wù)包括: 用戶服務(wù),驗(yàn)證服務(wù),靜態(tài)資源服務(wù)等。這些服務(wù)是全球只需要部署一處就可以,為所有的數(shù)據(jù)中心提供服務(wù)。
數(shù)據(jù)中心級別服務(wù)包括:代理服務(wù)(Nginx ), Tomcat應(yīng)用服務(wù),信息提示服務(wù),緩存服務(wù),事務(wù)安排服務(wù)等。這些服務(wù)需要在每個(gè)數(shù)據(jù)中心部署,為各自數(shù)據(jù)中心內(nèi)
宜順論文網(wǎng)www.13Lw.com
第 4 頁 共 14 頁
,
部的cluster 級別的服務(wù)提供數(shù)據(jù)中心級別的服務(wù)。
Cluster 服務(wù)服務(wù)包括:核心會議系統(tǒng)服務(wù)等。該層服務(wù)將提供會議系統(tǒng)的核心服務(wù)功能,并且cluster 級別的服務(wù)可以拓展以解決會議系統(tǒng)的容量問題。
在圖一里我們可以看到,盡管靜態(tài)資源和代理服務(wù)(Nginx )屬于全球服務(wù),也需要部署到每個(gè)物理的數(shù)據(jù)中心里。GSS 服務(wù)會將所有的靜態(tài)資源服務(wù)(部署于每個(gè)數(shù)據(jù)中心里)通過DNS 解析的方式,在邏輯上將它們統(tǒng)一管理起來。下面是靜態(tài)資源及URL 域名解析的基本流程:

(四)前端系統(tǒng)邏輯拓?fù)浣Y(jié)構(gòu)
在下圖中,Nginx 包含反向代理服務(wù)及靜態(tài)資源服務(wù)。靜態(tài)資源服務(wù)為全局服務(wù),反向代理層服務(wù)為數(shù)據(jù)中心級別服務(wù)。這些服務(wù)需要在每個(gè)物理數(shù)據(jù)中心進(jìn)行部署,并且需要暴露出宜順論文網(wǎng)www.13Lw.com
第 5 頁 共 14 頁
,
兩種類型的域名。一個(gè)是提供給企業(yè)用戶訪問的DNS ,一個(gè)是給訪問靜態(tài)資源用的NDS 。
(五)前端網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)
前端系統(tǒng)包括如下應(yīng)用端口:
端口1701:這是Nginx 服務(wù)上面的反向代理服務(wù)
端口1702:這是靜態(tài)資源服務(wù)的端口
端口8021:這是Tomcat 應(yīng)用服務(wù)的端口
前端系統(tǒng)包括如下VIP 需要在ACE 上建立:
靜態(tài)資源VIP :這個(gè)VIP 需要支持80和443端口;并且支持URL hash.
反向代理VIP :這個(gè)VIP 需要支持80和443端口;
Tomcat 應(yīng)用VIP :這個(gè)VIP 只需要支持80端口就可以,因?yàn)檫@是服務(wù)在網(wǎng)絡(luò)內(nèi)部之間調(diào)用。這個(gè)VIP 可能需要支持會話持續(xù)性這一要求。

宜順論文網(wǎng)www.13Lw.com
第 6 頁 共 14 頁
,
有如下內(nèi)部的域名需要建立:
靜態(tài)資源域名:如resource.abc.com 。這個(gè)內(nèi)部域名由GSS 提供,它用來映射到每個(gè)數(shù)據(jù)中心的靜態(tài)資源VIP 。
反向代理域名:如proxy.abc.com 。這個(gè)內(nèi)部域名由GSS 提供,它通過proximity 映射到每個(gè)數(shù)據(jù)中心的反向代理VIP 。
有如下外部的域名需要建立
靜態(tài)資源域名:如s1~s10.abc.com。這些靜態(tài)資源DNS 是別名,全部指向resource.abc.com
企業(yè)用戶的域名:如ibm.abc.com , hp.abc.com 。這些域名為別名,全部指向proxyabc.com 。

(六)前端Nginx 配置
1、Nginx 路由規(guī)則
URL 規(guī)則:/collabs
宜順論文網(wǎng)www.13Lw.com
第 7 頁 共 14 頁
,
Cookie 規(guī)則:在http 頭里訂義URL 的目標(biāo)地址,如
Endpoints=sj.abccollabs.com$dv1-s.abcconn.com$nike.api.abc.com$jb1.abcconn.com
No Cookie規(guī)則:如果沒有訂義cookie ,每個(gè)URL 有一個(gè)默認(rèn)的目錄
地址。 ci
命名規(guī)則:如果請求的URL 沒有匹配上URL 規(guī)則,我們將反向代理請
求至下面的命名規(guī)則: $host ~ (w*).(.*) -------- $1.api.$2 如: abc.com-------------abc.api.com
2、Nginx.conf 文件配置
靜態(tài)資源部分配置

反向代理配置

宜順論文網(wǎng)www.13Lw.com
第 8 頁 共 14 頁
,

(七)Tomcat 應(yīng)用配置
1、Server.xml 文件配置


2、Context.xml 文件配置

3、Catalina.sh 文件配置
(八)部分Nginx VIP配置
#Proxy
probe http dcqf-abc-proxy-1701-probe1
port 1701
interval 5
passdetect interval 5
request method get url /detectService?cmd=selfcheck
expect status 200 200
open 1
宜順論文網(wǎng)www.13Lw.com
第 9 頁 共 14 頁
,
probe http dcqf-abc-proxy-1702-probe1
port 1702
interval 5
passdetect interval 5
request method get url /detectService?cmd=selfcheck expect status 200 200
open 1
probe tcp tcp-1703
port 1703
interval 5
passdetect interval 5
open 1
rserver host we00qf1wng001
ip address 10.224.83.76
inservice
serverfarm host dcqf-abc-proxy-1701-sf
failaction purge
probe dcqf-abc-proxy-1701-probe1
rserver we00qf1wng001 1701
inservice
serverfarm host dcqf-abc-proxy-1701-static-sf failaction purge
probe dcqf-abc-proxy-1701-probe1
rserver we00qf1wng001 1701
inservice
serverfarm host dcqf-abc-proxy-1702-sf
failaction purge
probe dcqf-abc-proxy-1702-probe1
rserver we00qf1wng001 1702
inservice
serverfarm host dcqf-abc-proxy-1702-static-sf failaction purge
probe dcqf-abc-proxy-1702-probe1
rserver we00qf1wng001 1702
inservice
宜順論文網(wǎng)www.13Lw.com
第 10 頁 共 14 頁