基于Web+Oracle的ICP网站动态计费策略实现

时间:2022-09-21 09:27:52

基于Web+Oracle的ICP网站动态计费策略实现

摘要:介绍了基于ICP服务的网上应用计费管理系统的设计与实现技术。详细阐述了计费子系统中各个模块的实现流程、各数据和功能模块之间的相互关系;采用了良好的设计理念,通过三层体系结构,基于Java技术的开发方法和Oracle优化的存储过程与函数设计了灵活的计费策略和方案,实现了计费策略的动态管理和维护,满足了计费策略变动的需要,并且为计费系统的良好运行提供了保证。

关键词:网络内容提供商;计费日志;帐户监视

中图分类号:TP311文献标识码:A 文章编号:1009-3044(2009)36-10190-03

The Dynamic Charging Policy System of ICP Service Network Based on Web+Oracle

ZHU Ya-xing

(Dept. of Software Engin.,Guangdong Vocational Institute of Science and Technology,Guangzhou 510640,China)

Abstract: The design and realization technology of the charging management system based on ICP service is introduced in this paper. The realization flow of each module, the relation of each data and function module are discussed in details. with the good design idea and three tier architecture system frame, Java developing technology, storage procedure and function, the flexible charging policy and schema is designed well. It realizes the dynamic management and maintenance of the charging system which meets the policy change and ensures charging system run well.

Key words: ICP; charging log; account watching

目前一些大型网站的定位侧重于作ICP(网络内容提供商),其主攻方向是信息增值服务,收入来源于信息费。因此ICP的网站大都具有比较丰富的网上信息资源、信息全文检索 、电子出版系统、BBS和网络新闻、视频会议系统、动态信息等;那么网上应用管理和计费管理就变得十分必要和迫切。一个设计良好的网上应用计费系统不仅可以保障网站的良好运行,而且可以带来好的运营收入和效果。本文主要针对一提供ICP应用服务的网站本身的特色,建立一套完善的网上应用计费管理系统。

网上应用计费管理系统的设计思想是按用户享有的各种“服务”为基础,为了将来管理和计费的需要,系统引入了“服务”的概念并支持服务的动态扩展,如用户可自由选取系统提供的各种服务(全文检索、电子邮件、、拨号,视频点播等服务),针对每种服务实施计费。系统维护人员可根据需要增加新的服务或放弃现有的服务。网上用户上网申请注册并交费后,可自由选取系统提供的各种服务。对于用户本身来讲不仅有不同的类型,不同用户还可以选取各种不同的服务,选择不同的计费方式(包括:按流量计费、按连续时间计费、按读取信息量计费、是否包月等),并且在不同的上网时段可能会有一些不同的时区或节假日的减免率,那么,针对这样的可支持不断扩展的网上应用该如何设计计费方案,根据需要灵活调整并实施计费呢?

1 系统设计

建立计费管理系统的目的是为系统提供统一的计费管理工作。首先建立一个合理的计费方案和策略是计费的基础。在此基础上实行计费服务系统的管理。

1.1 计费方案管理系统

首先分析系统的计费类型。主要包括按流量计费;按连接时间计费;按读写信息量计费。

计费类型有统一的计费参数项,包括:基本费率;减免优惠的时区和时区优惠率、减免优惠的用户类型和用户类型减免优惠率。一个用户只有一个用户类型,用户类型可视需要增减;每个用户类型有统一的计费参数项。

对新建立的各用户类型,系统应提供一个缺省的计费方案;可以根据情况修改计费标准,提供方案报告。

1.2 计费系统

计费系统根据各需要计费的信息,执行计费任务。包括:计费日志;计费日志统计结果;用户帐户记录;此外,系统还提供完善的缴费管理和帐务处理等。其中,计费日志是计费的依据,由一套完善的日志系统进行判断、处理、提取和自动生成,这里不作赘述。

1.3 系统环境

本系统包含有不同操作系统(Solaris 、IRIX和Windows 2000 server)、应用软件(NETSCAPE、SYBASE、ORACLE、OPENVIEW、全文检索、视频点播、邮件系统等)。开发平台是以Sybase公司的Enterprise Application Server(EAS)为应用服务器,以Power J及Powersite为应用软件开发工具, EAS包括组件事务服务器Jaguar CTS和动态站点管理工具PowerDynamo两者紧密集成,是同时实现Web联机事务处理和动态信息的企业级应用服务器平台。在本计费系统中,良好的应用Power J和PowerDynamo制作了Java Applet和动态页面[1]来管理和维护计费方案,并大量利用了Oracle的优秀的存储过程和函数[3]来实现复杂的计费。为了将来维护和扩展的需要,系统采用了三层体系结构。

1.4 三层体系结构

前端的客户层:客户端系统采用Web方式,利用浏览器向Web服务器请求对网上应用管理系统进行操作的相关网页;

中间应用层:封装业务逻辑、进行事务处理[4],包括PowerDynamo和Jaguar CTS,其中PowerDynamo负责网页生成和动态数据,Jaguar CTS负责组件和事务处理,客户端利用HTTP协议与PowerDynamo通讯,得到想调用的页面(包括以Java Applet形式下载的组件),若有组件则由PowerDynamo与Jaguar CTS通过IIOP协议执行组件方法;

后端数据库管理层:提供对数据库的访问。其具体体系结构图如图1。

2 系统功能实现

根据系统的设计分析和网站将来灵活扩展的需要,以及方便系统的维护管理,此计费管理系统主要包括计费方案管理系统、计费系统、用户缴费系统、帐户监视系统等。

计费管理系统功能流程图如图2所示。

2.1 计费方案管理系统

计费方案管理系统涉及到服务类型(包括:、邮件、拨号、全文检索和视频点播)、计费方式(包括:按流量计费、按连续时间计费、按读取信息量计费、包月等)、时区减免率、用户类型及用户类型减免率等方面的信息。所有这些信息都是进行计费统计计算的基础。

计费方案管理系统包括策略设置、计费规则维护等。因此,为了达到灵活计费的需要,需要设计良好的计费数据库表[2],包括大量的代码表和计费规则表。如:用户代码表、服务类型基本费用、时区减免设置、用户类型减免设置、计费策略设置、计费规则等。

a)计费方案管理

计费方案管理如图3:用户以适当角色登录系统,可进行计费规则及策略的维护工作,包括用户类型、服务类型、计费方式、数据类型、计费属性、用户状态、用户角色、节假日信息等的维护、服务类型基本费用设置、时区减免率设置、用户类型减免率设置、计费策略设置、计费规则等信息维护管理功能。系统功能树利用java applet来实现,管理员也可远程维护此系统,只要通过相应的安全认证下载有关的文件,使系统维护灵活,安全。

b)权限管理

用户帐号与用户角色、计费规则的关联维护,所涉及到的权限维护有:用户帐号与角色关联代码维护;用户角色与功能树关联代码;缺省规则表维护;计费规则表维护;时区减免对照表维护;用户类型减免率对照表维护;服务类型基本费用表维护;用户帐号与计费策略关联表维护。

2.2 计费系统

计费系统要根据计费方案管理系统制定的计费策略及用户缴费系统的用户帐号信息以及用户日志信息执行计费统计任务。其核心任务包括:即时计费统计、结算统计等。

1)即时计费系统根据计费日志和计费策略产生计费数据,系统运行的原理如下:通过控制日志信息表中的标志位(1,0),0表示未计费,1表示已计费 ,筛选出各种服务日志表中计费标志位为0的所有记录,根据计费策略及单位费用逐条计费。

即时计费调度模块由定时器调用,进行n次大的循环(n表示服务种类),每次处理一种服务,不同的服务调用相应的存储过程处理,然后向日志统计表中插入一条日志记录。其内部循环根据不同服务的计费日志和本结算期用户对应的计费策略,调用相应的函数向日志明细表中插入记录。

数据来源:日志系统产生的数据;

数据流向:即时计费月表

2)结算统计系统将即时计费月表中属于本结算区间内的计费数据按照用户帐号、服务类型进行分类汇总。此模块的特点为可动态求出本结算期截止当天的累计费用。方便查询和对帐。

数据来源:即时计费月表

数据流向:结算统计表

涉及到的过程函数有:结算统计调度模块、结算统计模块、计费方式分为按流量计费策略;按时间计费策略;重新调整用户与策略的的关联函数,调整某帐号某服务包月修改信息,同时删除无效的关联信息。

2.3 用户缴费系统

用户缴费系统为用户提供预付与结算管理。在预付管理模块中,可按用户类型查询计费规则表,按最小余额提示用户至少缴纳的费用。用户可查询自己的费用使用情况,并得到相应的结算账单;缴费管理员不仅可查询用户的费用账单,还可以得到各种统计报表,并利用统计数据进行用户及服务状况的分析。

2.4 帐户监视系统

系统功能流程图如图4。

帐户监视系统提供自动帐户监视和管理功能,在后台定时运行。通过对用户信息库、计费统计库及计费方案库相关信息的综合查询,对到结算期的用户,发结算账单;到交费期的用户,发交费通知;发现欠费且未超出欠费催款期的用户,发出欠费催款通知;发现欠费且超出欠费催款期的用户,发出注销帐号警告通知;发现欠费且超出注销帐号警告期的用户,发出注销用户通知。用户状态的改变是由系统后台程序根据相应用户的余额自动做出调整。

以上用户状态的改变均在用户状态日志表中添加一条日志记录,并根据缺省规则中的内容及发送方式,发出相应的邮件通知。

3 关于计费动态扩展管理

3.1 计费策略

系统支持新增用户类型和新增服务类型的动态扩展。系统自动为新增“用户类型”生产一个缺省的计费方案;根据需要管理员可以在后台维护调整。

新增的“服务类型”只需要更改触发器中相应的服务类型代码和对应的计费方式类别便可。系统自动会将服务代码与“时间”,“包月”等计费方式结合形成一系列相关的计费策略。后台程序会自动创建相关的日志表和自动生成相应的计费程序模板。

3.2 关于权限的维护扩展

系统支持对用户角色进行修改,同时也支持新增角色,为角色设置权限,并将用户与新角色关联的设置。

3.3 关于计费与用户管理的接口扩展说明

任何用户只要被系统确认为合法用户并选择服务后,系统会自动建立帐号与计费策略的关联。此时,计费系统便可以对此用户计费。当用户选择服务或更改计费方式或放弃服务时,相应触发器会自动向用户选择服务动作表中插入一条记录,“操作类型”字段说明用户执行了什么操作,此表上的触发器根据此数据决定用户帐号与计费策略的关联。

“操作类型”字段有两位组成,含义说明为:第一位表示包月与否,0:包月1:不包月,第二位表示操作方式1:增加、2:删除、3:更改。

4 结束语

计费管理系统包括计费方案管理系统、计费系统、用户缴费系统、帐户监视系统。计费方案管理为计费系统的实现奠定了基础,各系统的实现流程、各数据和功能模块之间的相互关系、各计费策略和方案的制定、优化的存储过程和函数,实现了计费策略的灵活性、动态管理和维护,为计费系统的良好运行提供了保证。而且系统本身也具有良好的扩展性。此系统在运行过程中,得到较好的效果。

参考文献:

[1] 陈雍.基于ORACLE数据库应用系统性能调整和优化研究[J].江西师范大学,2008.

[2] 蒋秀风,何凤英.oracle9i数据库管理教程[M].北京:清华大学出版社,2007.

[3](美)Nilesh Shah.Oracle数据库系统―SQL和PL/SQL简明教程[M].2版.刘伟琴,译.北京:清华大学出版社,2005.

[4] 刘红岩.Sybase组件事务服务器Jaguar技术详解[M].北京:电子工业出版社,2000.

上一篇:基于Eclipse的警务系统密码平台 下一篇:基于多混沌的数字图像加密算法研究