网银EMP培训05专题培训课件_第1页
网银EMP培训05专题培训课件_第2页
网银EMP培训05专题培训课件_第3页
网银EMP培训05专题培训课件_第4页
网银EMP培训05专题培训课件_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

主要内容0302

EMP框架的总体介绍

核心机制介绍

开发常见问题&讨论01EMP平台的核心组件构成EMP核心组成EMP核心框架EMPWebMVC模型EMP访问控制框架EMP数据库组件EMP事务一致性EMP数据格式化组件EMP规则引擎IOC组件工厂业务逻辑处理容器工作流处理容器EMP多渠道框架EMP后台访问EMPJMX支持框架EMPWeb2.0框架基于模型维护的EMP集成开发环境IDE基于JMX的EMP监控平台EMP平台提供的是一个完整的解决方案,从开发、运行、工作流支持、监控管理等方面都提供了全面的支持EMPSOA支持WebService支持JMS支持服务注册及管理终端层3表现逻辑、渠道处理层业务逻辑处理层核心框架分层设计模型EMPWeb2.0框架EMPWebMVCEMPJMXEMPMonitorJMXBasedMonitor其他系统JDBCHostAccessESBHostEMP访问控制框架EMP访问控制框架插件插件EJBBrowser其他Web2.0框架EMPIDEEMPWebService接入EMPHTTP接入EMPTCP/IP接入其他MVC渠道处理插件Format业务逻辑处理容器工作流组件构件框架组件工厂业务逻辑运行开发监控存储与业务处理EMP组件工厂IOC容器EMP运行原理POJO

java类注入XML属性配置EMP组件实例产生初始化请求执行页面流程配置文件表现逻辑处理引擎EMP表现逻辑组件实例EMP表现逻辑组件实例EMP表现逻辑组件实例从组件工厂获取组装表现逻辑流程实例业务流程配置文件业务逻辑处理引擎业务逻辑流程实例调用业务执行EMP业务逻辑组件实例EMP业务逻辑组件实例EMP业务逻辑组件实例组装业务逻辑流程实例EMP组件工厂IOC容器EMP组件工厂IOC容器业务逻辑处理引擎EMP业务逻辑处理容器——行业应用上的特性金融行业应用大多有连通性需求与典型的信息管理类不同,金融应用不但要管理数据库,还要与外围系统完成数据交换有报文处理、通信协议处理的需求业务处理的复杂度是很高的相对于传统的信息管理类处理,流程复杂很多硬编码方式的实现弊病:质量低、难维护业务处理流程具有相似性以单纯的接口定义+服务实现的方式来完成流程处理并不完全合适:重复性代码、流程的随需变动带来的硬代码的改造采用流程的抽象+配置化产生流程实例的方式更能满足真正的业务需要,流程的改变只是意味着配置的改变EMP特点—从组件到业务构件到流程处理的组装式业务开发平台框架技术组件业务构件业务处理流程组装组装流程变化流程变化EMP业务逻辑处理容器——逻辑处理上的优化组包发主机记录日志本地处理普通逻辑处理结束开始组包发主机记录日志外部调用子逻辑调用结束开始很多业务处理需要使用某一个公共处理逻辑,如身份验证、数据加密处理等EMP的业务逻辑处理对象都是无状态的,独立的组件封装,可以作为子逻辑在业务处理中调用,实现共享业务逻辑组件交易业务处理是金融行业的基础应用,交易逻辑具有它约定形成的基本流转模型,同时针对不同的业务又会有自己的特殊处理交易业务处理随着发展需要整合和抽象,逻辑的共享不但可以降低开发难度,同时也能保证系统的简洁,提高应用质量组包发主机记录日志本地处理公共逻辑+特殊处理结束开始特殊处理特殊处理很多业务处理在基本逻辑上是一致的,但在某些处理逻辑点上需要针对本业务做一些特殊的处理EMP提供了公共逻辑+扩展逻辑步骤,来满足这种业务逻辑的需求优化优化EMP业务逻辑处理容器——业务构件业务逻辑构件BizLogic业务操作Operation业务操作Operation业务操作Operation业务操作Operation输入接口Input流程处理Flow输出接口Output业务数据Datas资源节点Context服务对象Services格式对象Formats业务操作单元Action业务操作单元Action业务操作单元Action业务操作单元Action业务操作单元Actiontransitiontransition一个业务逻辑构件可以是一个客户管理构件,其中包括客户查询、客户增加、客户修改和客户列表等等业务操作一个业务逻辑构件有统一的资源节点,为所有业务操作提供数据资源、服务资源和格式化处理资源一个业务逻辑构件是自封装的,无状态的,可以很容易转化为服务组件(WS的发布)Context结构ContextDataFormatServiceContext.getDataElement(“”)Context.addDataElement(“”)Context.removeDataElement(“”)Context.getDataValue(“”)Context.setDataValue(“”)IndexedCollectionKeyedCollectionDataFieldContext.getService(“”)Context.getFormat(“”)Context.getDataElement()?Context.setDataElement(kcoll)?不可使用Context访问接口数据访问getDataElement(StringdataName):DataElement得到dataName名称的数据定义getDataValue(StringdataName):Object取dataName名称的数据域的值setDataValue(StringdataName,Objectvalue)设定dataName名称的数据域的值为valueaddDataElement(DataElementelement)addDataField(DataFieldfield)添加数据域addDataField(Stringname,Stringvalue)添加数据域服务的访问getService(StringserviceId):ServiceFormat访问getFormat(StringformatId)传递参数setAttribute(Stringname,Objectvalue)getAttribute(Stringname)数据模型RootCtxAPPChannelCtxAPPSessionCtx交易的Context交易的Context当前已登陆,即已创建Session前提查找方式渠道整合应用框架EMP多渠道接入与访问控制渠道接入层业务处理层访问控制插件CheckBeginEndEMPBizLogic构件EMPBizLogic构件EMPBizLogic构件EMPBizLogic构件统

口HTTPTCPIPWebServiceMQEMP提供了TCPIP、HTTP和WebService的渠道接入实现业务处理层共享EMP业务逻辑构件遵循EMP访问控制处理插件框架可提供访问请求的合法性检查(Check),请求执行前预置处理(Begin),请求执行后预置处理(End),不影响业务的具体实现,但通过访问控制可改变业务处理逻辑可完成如:并发控制、黑名单过滤、报警记录、行为记录等控制功能可配置多个访问控制器插件数据记录采用JMS机制,提高效率EMP渠道整合技术实现框架网上银行手机银行电话银行渠道接入客服应用自助设备http/tcpip/MQ渠道应用层客户统一认证渠道特色处理限额及计费管理交易监测及控制数据采集处理访问控制层统一构件调用接口个人业务构件公司业务构件个人VIP业务构件公司VIP业务构件统一签约构件数据采集处理业务处理层(产品工厂)核心层后

群核心信用

卡CIF其他数

层轻量级数据汇聚仓库数据统计及分析(查询及报表)核心层CRM管

撑层业务操作管理统一渠道管理报表管理消息推送积分管理营销管理综合计费账务清算风险管理客户信息管理系统监控绩效考核管

理服

务决

策各层之间松耦合,通过本地接口或远程通信接口方式组装,支持单个应用集成和各层分布式部署基于EMP的应用产品体系框架网上银行手机银行电话银行渠道接入客服应用自助设备http/tcpip/MQ渠道应用层客户统一认证渠道特色处理限额及计费管理交易监测及控制数据采集处理访问控制层统一构件调用接口个人业务构件公司业务构件个人VIP业务构件公司VIP业务构件统一签约构件数据采集处理业务处理层(产品工厂)核心层后

群核心信用

卡CIF其他数

层轻量级数据汇聚仓库数据统计及分析(查询及报表)核心层CRM管

撑层业务操作管理统一渠道管理报表管理消息推送积分管理营销管理综合计费账务清算风险管理客户信息管理系统监控绩效考核管

理服

务决

策交易整合(中台)网银++CC所有渠道产品基于相同的设计理念,可以从多个维度切入进行整合建设交易网关主要内容0301

EMP框架的总体介绍

核心机制介绍

开发常见问题&讨论02访问控制器19访问控制器20访问控制器实现的接口com.ecc.emp.accesscontrol.AccessController方法介绍checkAccess--入口方法,检查请求是否合法,以及该请求是否符合该控制器的管辖范围beginAccess--控制对象的开始控制方法,如果checkAccess返回结果不为空,则进入endAccess--请求对象处理完毕21访问控制器配置的位置?公共服务—accessManagerMVC层—empServletContext.xml平台处理机制?能够用来做什么?安全校验并发控制日志留痕等等…会话管理器23Session管理器Session管理器:EMPSessionManagerHttpSessionManager关注点:超时时间的设置页面输入内容过多时,如何不超时?24Session管理器Session跟踪机制:Cookie、URLREWRITE超时触发的事件—SessionTimeoutListener接口与客户端IP、Cookie绑定—防止假冒25Session管理器—sessionContext如何定义、使用—新版本中的变化何时创建、销毁SessionContext?数据格式化—报文EMP报文处理——行业特性报文是应用系统间交互的重要信息载体金融行业普遍采用报文进行系统间通信报文缺乏统一和标准报文是应用连通开发中的重要组成主流报文种类字符串格式(分隔符、定长、修饰符、数字压缩、值等式等等)Bitmap格式(8583及8583扩展)XML格式报文处理的难点报文是规范的,要求一定是可配置模式的,否则工作量和维护量巨大在应用中,总会有报文扩展的需求,扩展的方法和难度EMP报文处理——XML采用DOM方式不推荐使用原有的采用字符串解析方式的代码需要逐个配置标签,缺乏对Schema支持EMP报文处理——String采用字符串拼接的方式与通讯中真正使用的字节流方式产生矛盾—最直接的体现是编码问题(定长报文中)EMP报文处理机制采用统一的调用接口不同的报文类型拥有不同的代码结构—类似Controller方式,不同层次子类拥有不同的抽象方法目前几个大的问题:扩展困难出错定位困难配置繁琐通信协议服务EMP通信协议处理——行业特性通信协议处理是应用系统间交互的重要基础金融行业普遍采用各种通信协议作为交互基础通信协议种类众多协议实现是应用连通开发中的重要组成主流通信协议种类TCPIP(单工、双工、长短连接、同步异步、并发控制、线程池)HTTP(标准和SSL)中间件和消息通信(CICS、MQ、JMS、TURXEDO等)FTP、SOAP、MAIL等EMP通信协议处理——EMP实现EMP提供了涵盖行业应用的通信协议服务通过配置化方式提供通信实现TCP/IPMQCICSTurxedoLU0、LU6.2FTPHTTPSOAPJMSEMP不但提供通信实现,更重要的是提供通信的管理通过JMX访问,可随时监控当前通信的状态通过参数配置,可控制通信并发数,并可智能调整通过轮询方式,可提供多服务器访问路由管理通过JMX访问,可控制通信的起停EMP通信协议处理——TCPIP扩展点数据流协议—CommProcessorSocket参数设置—SocketListener接口其它扩展?数据库访问EMP数据库能力——声明式事务处理在业务逻辑的处理过程中往往涉及多次的数据库访问,而这些数据库访问要求在一个事务内完成,甚至在一个业务处理逻辑中还有嵌套的事务处理需求,基于这种需求,EMP提供了独立于于应用逻辑的,独立事务管理模块通过EMP事务管理模块,提供声明式事务处理,同时应用也可干预事务的处理EMP提供两种事务处理能力基于数据源的事务管理模块,实现基于单一数据源的事务统一管理基于JTA的多数据源的事务管理模块,实现多个数据源情况下的事务处理(需要JTA驱动程序支持)EMP中每一个数据库访问相关的操作均可以声明事务事务申明事务处理说明REQUIREDT1启动一个事务REQUIREDT1加入已启动的事务REQUIRE_NEWT2启动一个新事务,该事务在本操作中完成并提交,不影响前一个事务REQUIREDT1流程结束后,自动提交事务EMP数据库能力——事务机制每个线程保存有一个ThreadLocal堆栈每启动一个事务,往堆栈中放置事务。提交事务时,弹出一个事务进行处理与Spring事务差别?事务的嵌套、交错问题?其它问题?缺省全局还是独有事务更合适?EMP数据库能力——数据库服务组件与EMP事务处理结合的数据库访问服务使用应用服务器数据库连接池也可以使用EMP平台自行提供的数据库连接池管理数据库访问(数据处理)数据库表与平台数据的映射数据库存储过程访问数据库SQL访问数据访问IDE向导功能DBEMPDataModelEMP数据库访问服务transactionManagerEMP数据库能力——访问效率优化运行时,全部生成预处理sql语句对象提供对所有查询的自动分页能力对主流数据库分别提供支持SQLServer、DB2、Oracle提供动态查询SQL支持提供模板工具定制动态查询SQL根据运行时数据信息,动态生成查询条件冲正处理框架EMP冲正处理——交易处理中的复杂需求冲正处理是交易处理中的重点和难点冲正处理使流程更复杂,开发难度加大冲正处理是交易一致性保证的基础多后台交互时,交易一致性的考虑更加复杂冲正处理中需要考虑的问题后台系统都有自己的冲正处理机制,并不统一冲正策略的考虑:同步/异步,冲正次数,主机压力等EMP所设计的冲正处理功能统一的冲正处理框架:针对每个主机进行冲正流程的定义流程定义不用考虑冲正处理:分离冲正处理和正常交易流程,正常交易流程中只需要考虑交易状态提供冲正策略的配置:异步冲正条件、冲正次数、冲正日志EMP冲正处理——统一冲正管理平台提供冲正处理机制同步冲正异步冲正针对后台系统提供冲正流程同步冲正流程异步冲正流程交易流程定义只关注正常业务实现只须配置该后台是否需要冲正系统在交易失败后自动检查冲正标志,完成冲正冲正策略管理可配置:是否采用同步冲正可配置:异步冲正冲正次数可配置:异步冲正在主机不可用情况下自动停止处理时间定时服务EMP定时服务基于Quartz的封装基于数据库的持久化支持可动态管理任务可查看任务执行状态支持EMP业务逻辑构件作为任务执行提供监控接口基于JMX的监控集成接口实现监听部署支持独立应用支持集群模式(需要数据库持久化支持)EMP平台其他基本特性其他的平台基本特性说明统一、规范的异常处理流程中的异常均抛出处理提供ExceptionHandler服务注入,可个性化对不同的Exception进行处理统一、标准的日志管理基于Log4J的日志封装,可配置日志级别提供日志拦截器,配置可输出制定的日志数据(如客户号、SessionID)通过增加线程标识识别同一个请求的日志哪些异常需要关注?哪些需要抛出?错误码、错误信息规范?EMP监控管理EMP监控系统EMP提供了从开发、运行、管理的完整平台,为IT系统建设提供统一的技术架构、开发规范和管理功能。EMP监控系统:采用图形化方式管理应用系统运行时监管能力系统运行状况实时监察交易访问控制统计和管理组件参数设置事后监管分析能力交易统计分析系统调优依据EMP监

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论