自由CGI之路V面向对象的可配置的CGI编程.ppt

上传人:牧羊曲112 文档编号:5823319 上传时间:2023-08-23 格式:PPT 页数:31 大小:726.32KB
返回 下载 相关 举报
自由CGI之路V面向对象的可配置的CGI编程.ppt_第1页
第1页 / 共31页
自由CGI之路V面向对象的可配置的CGI编程.ppt_第2页
第2页 / 共31页
自由CGI之路V面向对象的可配置的CGI编程.ppt_第3页
第3页 / 共31页
自由CGI之路V面向对象的可配置的CGI编程.ppt_第4页
第4页 / 共31页
自由CGI之路V面向对象的可配置的CGI编程.ppt_第5页
第5页 / 共31页
点击查看更多>>
资源描述

《自由CGI之路V面向对象的可配置的CGI编程.ppt》由会员分享,可在线阅读,更多相关《自由CGI之路V面向对象的可配置的CGI编程.ppt(31页珍藏版)》请在三一办公上搜索。

1、自由CGI之路V3,-面向对象的可配置的CGI编程互联网运营部 tommyyan2008-09-03,新的CGI系统介绍,在cgi的开发实践中,通过不断的系统重构,完成了一个基于配置的cgi系统。一般情况下,系统中添加一个传统意义上的cgi请求,只需要进行几个配置文件的少量修改即可完成,而不需要进行编码工作。通过驱动模块的扩充可以使系统不断增加新的功能。良好的扩充性:可以基于点的控制也可以基于流程的控制,中间件的技术:使接口在上层表现出了一致的特点重复性的工作的处理:在这个系统中基本上看不到系统的规模的控制:使变更的影响范围在合理的范围内进行;全配置的系统:即使在配置上也很注重细节,做到了基于

2、模板的配置和默认值选取,使一次新的配置也许只是个别字段的修改。,神奇的tcgi,#include cgi.h#define CGI_CONF_PATH/usr/local/MKT_Act/conf/int main(int argc,char*argv)TCgi theCgi;theCgi.RunEx(CGI_CONF_PATH);,发展历程,cgi层次结构,CGI处理流程,CGI处理流程,CGI基础层,CGI基础层,完成所有与外部应用系统无关的封装完成一个CGI完整的逻辑封装提供基于中间件的驱动接口提供可以重载的流程接口提供二次开发接口提供配置项管理的接口,系统基础层,完成所有公司、系统级别

3、的可重用性的封装提供类似cgiex类似的web方式cgi访问对基础库的功能封装 TLib、TBase及其他公司、部门相关库提供公用数据源接口的驱动封装 TTC、mysql、c4a、支付portal等相关的业务统计、运维统计、告警操作,业务基础层,完成所有业务级别的可重用性的封装业务级别的检查例如:用户注册的检查、黑名单检查、业务公用信息的获取用户的性别、城市、时间戳、个人账户,可配置的数据读取和操作高级用户状态、好友资料,业务层,特殊业务逻辑的处理统计点、监控点的添加,CGI基础层,完成所有与外部应用系统无关的封装参数处理模板管理操作管理驱动管理项目、模块管理配置系统,基础层-配置系统,项目管

4、理、接口描述-cgi.ini,按照一定规模组织的外部接口(cgi)的集合,接口包含一下描述输入特性输出特性操作列表全局的检查点公共功能,#发起抽奖lotterybidtemplateFile=/template/lotterybid.xmltemplateType=1templateCode=utf-8checklogin=trueoplist=bidlotteryargs=actid|typestarttime=2008-02-01 08:30:00endtime=2008-03-01 23:59:59,参数处理-输入,参数输入类型整形/字符类型/特殊类型(文件等)取值范围默认值错误返回对应

5、的描述,返回码是否允许为空,参数处理-输出,输出的格式多样(web支持的各类格式)xml、html、图片文件等等返回类型多样错误返回、正确返回,基于模版的返回是否记录执行结果的多样性日志、告警、统计等,参数中心类-CgiArgCenter,字符编码(xml、html、js、url。)参数检查(整形大小,字符型长度)输入输出参数的缓冲区根据指定的模板类型进行字符编码,模板管理,根据不同的错误代码、某一个字段的返回值取不同的模板各种格式模板的支持和自动转译基于操作名的模板替换,模板示例,try var rc1=;rc2=;MPPresentlist=;callback(rc1,rc2,MPPres

6、entlist);catch(e)status=callback is not exist!try var rc1=0;rc2=;MPPresentlist=;callback(rc1,rc2,MPPresentlist);catch(e)status=callback is not exist!,操作,原子级的对一个驱动接口访问的描述底层驱动接口操作类型:查询、修改、删除、新增、赠送、抽奖。参数变换输入参数和返回结果参数指定服务器相关信息,抽奖操作,bidlotterydriver=Portaltype=modfielddisplay=LotteryRankarglist=actid|URL

7、|LOGIN_UIN|typeargmaplist=actid,MPRuleID|type,LotteryTypesubargs=MPRuleID|LotteryTyperesultarglist=LotteryItem,1|LotteryRank,1|ListID,1serverinfo=172.16.60.16:30008|172.16.244.170:30008testserverinfo=172.16.68.141:30007|172.16.68.141:30007,驱动,对一个外部接口的统一接口的封装加载方式:动态、静态服务器信息支持的操作类型,驱动-统一接口,对一个外部接口的统一封

8、装,一致性的接口,系统启动时注册到操作管理器中初始化接口typedef void*(*FUNC_DRIVER_INIT)(map,驱动-已经实现的接口,TTC支付Portal字符串协议MGW,高级应用-系统扩展性,扩充新的驱动建立业务级别的操作建立操作之间的衔接和处理数据源-基于模板的配置流程的特殊处理,公用模块-系统级别,GET/POST方式检查参数相关模板相关生效时间、结束时间,公用模块-公司级别,社区登录态检查脏话过滤验证码检查增值中心位判断功能性tips发放,公用模块-业务级别,物品管理:赠送、购买、限制包月业务购买动态用户群判断加锁、频率限制模块兑换规则业务统计数据上报模块间调用监控告警,谢 谢!,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号