分布式会议系统前端部署的实现

论 文 摘 要在后PC 时代,物理位置并不重要了。传统的办公室软件在后PC 时代有着明显的软肋,用户习惯于使用多种操作系统及多种移动设备。在当前的时代,在日常生活中需要能够在任何地点,任何时间能

论 文 摘 要

在后PC 时代,物理位置并不重要了。传统的办公室软件在后PC 时代有着明显的软肋,用户习惯于使用多种操作系统及多种移动设备。在当前的时代,在日常生活中需要能够在任何地点,任何时间能够进行流畅的沟通,不单单只能用台式机进行工作学习等。基于云平台的软件对于随时随地地流通交流提供了可能性。这里我们主要想讨论在分布式环境下,前端的软硬件是如何部署的,以实现不同地域的人以较高的性能体验接入在线会议系统。

关键词:网络会议、Nginx 、Cisco ACE

宜顺论文网www.13Lw.com

第 1 页 共 14 页

,

目 录

一、网络会议系统的介绍 . ............................................................................................................................ 3

(一)系统内部分专业名词解释: ..................................................................................................... 3

二、网络会议系统前端分布式部署 . ............................................................................................................ 4

(一)硬件需求: . ................................................................................................................................ 4

(二)软件需求: . ................................................................................................................................ 4

(三)系统服务 . .................................................................................................................................... 4

(四)前端系统逻辑拓扑结构 ............................................................................................................. 5

(五)前端网络拓扑结构 ..................................................................................................................... 6

(六)前端Nginx 配置 ......................................................................................................................... 7

(七)Tomcat 应用配置 ........................................................................................................................ 9

(八)部分Nginx VIP配置 . ................................................................................................................. 9

(九)开源资源 . .................................................................................................................................. 12

(十)环境部署、运维的一些说明 ................................................................................................... 12

三、参考文献: . .......................................................................................................................................... 13

宜顺论文网www.13Lw.com

第 2 页 共 14 页

,

一、 网络会议系统的介绍

用户只需打开浏览器,即可实现实时进行在线会晤、共享文档、方案演示、应用程序演示等功能。该系统主要用户为大中小型企业用户,也适用于个人用户。

在上图中,不同的物理地域里需要需要一套和多套不同的服务。这样设计的目的是让用户在性能体验上达到最优。北京的用户访问统一入口的URL 时,数据中心的前端服务会在北京服务中心为其提供服务,当上海的用户访问统一入口的URL 时,上海本地的数据中心前端服务为其提供服务,不同的前端服务只会调用各自本的后端核心层服务。不同数据中心间的后端核心服务相互调用,这样消息能够在全系统内(跨地域)相互同步。后端核心层服务的网络由专线互联,这样能训保证后端服务高效、稳定的相互调用。

(一)系统内部分专业名词解释:

1、Nginx :是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/ POP3)

宜顺论文网www.13Lw.com

第 3 页 共 14 页

,

代理服务器。

2、Tomcat :是jakarta 项目中的一个重要的子项目,它又是sun 公司官方推荐的servlet 和jsp 容器。

3、GSS :全球的地点选择器(思科产品用于名字解析和网络路由) 。为了帮助确保数据中心可用性,Cisco ACE GSS 装置数据中心间的全局负载均衡和智能故障切换,以帮助确保业务连续性、全面的域名系统(DNS )和动态主机配置协议(DHCP )支持,并抵御基于DNS 的分布式拒绝服务攻击。

4、ACE :(Application Control Engine )应用控制引擎。适用于Cisco Catalyst® 6500的思科 应用控制引擎模块(ACE)系列产品提供了最高水平的应用基础设施控制能力、应用性能、应用安全性和基础设施简洁性。Catalyst 6500 交换机使用Cisco ACE (应用控制引擎)服务模块。ACE 服务模块能够实现高达16 Gbps 的性能。ACE 服务模块还可以通过SSL 加密/解密,以及双向的内容检测来提供安全性。

5、VIP :虚拟IP 地址。如多个客户端向这个虚拟IP 地址发出IP 请求,比如HTTP Get 请求。交换机会把这些请求分发(负载分担)到多台服务器上。然后交换机根据多种因素来实施负载分担,比如TCP 和UDP 协议、负载和其他负载分担参数。除此之外,有必要的话,交换机还会把客户端发来的请求转发给同一台服务器,比如在使用FTP 时,一个客户端必须在整个回话或数据流过程中,与相同的服务器进行通信。通常情况下,客户端设备会使用DNS 来解析虚拟服务器IP 地址。

二、网络会议系统前端分布式部署

(三)系统服务

整个系统体系服务大致分三层,分别是全局级别服务,数据中心级别服务,cluster 级别服务。

全局级别服务包括: 用户服务,验证服务,静态资源服务等。这些服务是全球只需要部署一处就可以,为所有的数据中心提供服务。

数据中心级别服务包括:代理服务(Nginx ), Tomcat应用服务,信息提示服务,缓存服务,事务安排服务等。这些服务需要在每个数据中心部署,为各自数据中心内

宜顺论文网www.13Lw.com

第 4 页 共 14 页

,

部的cluster 级别的服务提供数据中心级别的服务。

Cluster 服务服务包括:核心会议系统服务等。该层服务将提供会议系统的核心服务功能,并且cluster 级别的服务可以拓展以解决会议系统的容量问题。

在图一里我们可以看到,尽管静态资源和代理服务(Nginx )属于全球服务,也需要部署到每个物理的数据中心里。GSS 服务会将所有的静态资源服务(部署于每个数据中心里)通过DNS 解析的方式,在逻辑上将它们统一管理起来。下面是静态资源及URL 域名解析的基本流程:

(四)前端系统逻辑拓扑结构

在下图中,Nginx 包含反向代理服务及静态资源服务。静态资源服务为全局服务,反向代理层服务为数据中心级别服务。这些服务需要在每个物理数据中心进行部署,并且需要暴露出宜顺论文网www.13Lw.com

第 5 页 共 14 页

,

两种类型的域名。一个是提供给企业用户访问的DNS ,一个是给访问静态资源用的NDS 。

(五)前端网络拓扑结构

前端系统包括如下应用端口:

端口1701:这是Nginx 服务上面的反向代理服务

端口1702:这是静态资源服务的端口

端口8021:这是Tomcat 应用服务的端口

前端系统包括如下VIP 需要在ACE 上建立:

静态资源VIP :这个VIP 需要支持80和443端口;并且支持URL hash.

反向代理VIP :这个VIP 需要支持80和443端口;

Tomcat 应用VIP :这个VIP 只需要支持80端口就可以,因为这是服务在网络内部之间调用。这个VIP 可能需要支持会话持续性这一要求。

宜顺论文网www.13Lw.com

第 6 页 共 14 页

,

有如下内部的域名需要建立:

静态资源域名:如resource.abc.com 。这个内部域名由GSS 提供,它用来映射到每个数据中心的静态资源VIP 。

反向代理域名:如proxy.abc.com 。这个内部域名由GSS 提供,它通过proximity 映射到每个数据中心的反向代理VIP 。

有如下外部的域名需要建立

静态资源域名:如s1~s10.abc.com。这些静态资源DNS 是别名,全部指向resource.abc.com

企业用户的域名:如ibm.abc.com , hp.abc.com 。这些域名为别名,全部指向proxyabc.com 。

(六)前端Nginx 配置

1、Nginx 路由规则

URL 规则:/collabs

宜顺论文网www.13Lw.com

第 7 页 共 14 页

,

Cookie 规则:在http 头里订义URL 的目标地址,如

Endpoints=sj.abccollabs.com$dv1-s.abcconn.com$nike.api.abc.com$jb1.abcconn.com

No Cookie规则:如果没有订义cookie ,每个URL 有一个默认的目录

地址。 ci

命名规则:如果请求的URL 没有匹配上URL 规则,我们将反向代理请

求至下面的命名规则: $host ~ (w*).(.*) -------- $1.api.$2 如: abc.com-------------abc.api.com

2、Nginx.conf 文件配置

静态资源部分配置

反向代理配置

宜顺论文网www.13Lw.com

第 8 页 共 14 页

,

(七)Tomcat 应用配置

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

宜顺论文网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

宜顺论文网www.13Lw.com

第 10 页 共 14 页

标签: