西安交通大学校园网始建于1994年,建立之初至今,一直致力于提升用户服务水平,构建一套完整的用户服务体系。
2007年后,随着数字化校园平台的建成,网络中心基于数字化校园平台构建了用户自服务系统,由于综合业务管理系统构建之初,没有考虑到以后用户服务体系的扩展,因此后面的用户自服务系统很多业务模块代码都必须重写,如果一个业务发生变化,两套系统都要更改代码,造成了巨大的代码维护量。2012年,我们提出了基于SOA架构重新构建校园网用户服务体系,将业务逻辑分层隔离出来,向下调用网络服务及应用系统,向上为业务平台提供服务。基于业务逻辑层之上,我们相继搭建了基于Web的网络用户服务系统、基于语音电话的用户服务系统、基于圈存机、查询机的用户自服务系统、基于移动平台、微信的自服务系统,这些子系统都是调用相同的业务逻辑接口,因此做到了业务逻辑统一,而且不用再为每一套子系统重构业务代码。用户服务平台上线后,用户可以在任何时间、任何地点、通过任何方式完成网络业务的办理,同时这套服务体系满足了不同人群的使用习惯,完全覆盖了所有网络用户。
面向服务的架构
面向服务的体系结构,是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种这样的系统中的服务可以以一种统一和通用的方式进行交互。
这种具有中立的接口定义(没有强制绑定到特定的实现上)的特征称为服务之间的松耦合。松耦合系统的好处有两点,一点是它的灵活性,另一点是,当组成整个应用程序的每个服务的内部结构和实现逐渐地发生改变时,它能够继续存在。而另一方面,紧耦合意味着应用程序的不同组件之间的接口与其功能和结构是紧密相连的,因而当需要对部分或整个应用程序进行某种形式的更改时,它们就显得非常脆弱。
由于校园网络内各种网络业务、应用在服务层面在业务逻辑上都是同构的,比如都有开户、查询、计费、管理、销户等业务逻辑,但是这些网络服务和应用的实现层面上都是异构的,有着不同的硬件平台、操作系统、编程语言,这些服务和应用有的是购买的产品,也有自主开发的,各不相同,要让这服务及应用能够交换数据,采用松耦合的SOA模型是最好的解决办法。
系统的设计与实现
系统的结构设计
校园网用户服务平台的系统架构可以简单分为三层:底层网络业务实现层、中间业务逻辑层、上层业务表现层。底层网络业务实现层是校园网提供的所有网络服务、应用管理接口的具体实现;中间业务逻辑层是实现网络用户服务平台的业务逻辑,中间层只关心业务逻辑,如开通业务、查询业务、管理、销户,而不管这些逻辑在具体的业务中是如何实现的;上层业务表现层是服务平台的具体表现,包括Web、portal、校园门户、圈存机、查询机、语音电话、移动客户端、微信,这些不同的业务入口都向下调用统一、标准的业务逻辑组件。下面详细介绍各层的设计。
底层网络业务实现层:业务实现层主要是要实现平台与底层各个网络服务及应用的接口。网络业务一般可分为3大类,第一类是网络接入,包括静态IP接入、portal认证接入、802.1X认证接入、PPPOE认证接入、无线接入。第二类是网络服务,包括VPN、代理、云桌面、云存储、电子信箱。第三类是应用系统,主要是数字化校园的各个应用系统。每个业务的接口实现没有一个统一标准或规范,主要是根据具体业务的体系结构来设计,这些业务有些是自主开发的,有些是厂商产品,实现的原则是稳定可靠、简单易行、容易维护。在我们的用户服务平台接口实现中,具体用到的有简单网管协议SNMP、远程过程调用RPC、SOAP协议、JSON数据交换、SOCKET通信、厂商提供的第三方接口、数据库直连等等。
中间业务逻辑层。中间业务逻辑层主要是业务逻辑的实现,是整个服务平台的核心。业务逻辑主要有以下要素:用户、策略、模板、计费、开户、管理、销户。
每个用户都通过唯一的NETID绑定一个具体的业务,用户的身份决定了开户的时候使用该身份相对应的模板和策略,模板决定了该用户使用这个服务的规格,比如网络带宽、网络流量、使用时段、空间大小等等,这样就可以针对不同的用户群体进行精细化管理,比如对本科生使用网络控制较为严格,研究生较为宽松,甚至可以更精细的根据学习成绩设定模板。策略决定了如何管理该用户的服务,何时何地能使用,何时何地不能使用,同时策略也决定了如何计费。管理主要有状态查询、打开服务、关闭服务、修改服务四种通用的操作,修改服务的操作里通常有修改服务的规格、修改密码。有了业务逻辑层后,就不用每种业务都写一套业务逻辑的代码了,在系统中只需要初始化一个业务,系统会自动生成该业务的所有逻辑,并生成业务所有的数据库表项,然后配置好模板、策略、计费,这个业务就可以运行了,上层业务表现层。上层业务表现层主要是业务逻辑在服务平台上的不同发布方式,默认的发布方式是Web,我们称为为综合业务管理系统,主要是面向工作人员。其它发布方式有用户自服务平台、基于SIP的语音电话系统、用户自服务系统、校园信息门户、多媒体触摸屏、圈存机、移动客户端、短信、微信。表现层各个系统对业务逻辑的操作,都是调用中间业务逻辑层的接口,不能对底层的具体业务系统进行操作。
特别声明:本站注明稿件来源为其他媒体的文/图等稿件均为转载稿,本站转载出于非商业性的教育和科研之目的,并不意味着赞同其观点或证实其内容的真实性。如转载稿涉及版权等问题,请作者在两周内速来电或来函联系。