南车电机ESB项目开发规范_第1页
南车电机ESB项目开发规范_第2页
南车电机ESB项目开发规范_第3页
南车电机ESB项目开发规范_第4页
南车电机ESB项目开发规范_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

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

文档简介

南车电机ESB建设项目开发规范南车株洲电机信息技术部 第17页共20页南车电机ESB建设项目开发规范

文档信息文档版本号起草人陈波起草日期20150410审核人审核日期批准人批准日期预期接收人甲方:乙方:监理方:修订记录版本日期作者说明1.020150410陈波

目录TOC\o"1-1"\h\z\t"标题2,2,标题3,3"1 前言 81.1背景 81.2目的 81.3范围 81.4定义 81.5参考资料 81.6文档约定 82 系统概述 92.1 技术总体架构 93 功能性需求 103.1 功能概述 103.2 逻辑架构 113.3 数据存储方式 113.3.1 数据高速缓存 123.3.2 DataPower缓存 123.3.3 数据缓存 123.3.4 持久化数据存储区 123.4 渠道发布 123.5 数据校验 123.6 数据转换 133.7 错误代码转换 133.8 通道资源 133.9 报文解析器 133.10 系统日志打印 173.11 交易流程 173.11.1 事务控制 173.11.2 并发执行 173.11.3 异常处理 173.11.4 公共流程 183.12 技术构件 193.12.1 基本构件 193.12.2 数据处理 203.12.3 通讯处理构件 243.12.4 文件处理构件 253.12.5 安全处理构件 293.12.6 数据库构件 303.12.7 数据缓存构件(需要与缓存平台厂商及普元确定方案) 473.12.8 任务管理构件(需要整合业务需要进一步确定方案) 493.12.9 业务交易构件 543.13 单元测试 543.14 运行管理 553.15 版本发布 553.16 交易平台新增及优化范围 553.16.1 渠道服务 553.16.2 交易流程 553.16.3 技术构件 553.16.4 通道资源 573.16.5 报文解析器 583.17 ESBIDE优化 583.17.1 业务字典 583.17.2 数据模型导入 583.17.3 报文导入 593.17.4 增量版本发布 604 非功能性需求 604.1 交易平台 604.1.1 测试需求 604.1.2 性能需求 614.1.3 安全性需求 614.1.4 扩展性需求 615 运行环境 625.1 设备 625.2 支持软件 62PAGE1前言背景南车株洲电机接口整合在基于PrimetonESB平台的基础上进行开发,整合南车电机多个外围系统和核心系统。为了便于在后期的开发及维护,必须制定一整套符合框架的的开发规范。文档目的本文试图提供一套开发高效可靠ESB程序的标准、约定和指导。它们以安全可靠的软件工程原则为基础,使代码易于理解、维护和增强。通过遵循和改进这些程序设计标准,使各项目产生的代码有更好的一致性,并提高软件开发团队的生产效率。本规范适用于采用J2EE规范的项目,所有项目中的命名、渠道、渠道服务、交易服务、通道、通道服务、业务字典、数据模型及Java代码(含JAVABEAN,开发工具生成的代码框架等)均应遵守这个规范。同时,也可作为其它项目的参考。要求项目都要遵循,并作为项目评审与验收依据。规范原则:遵循业界标准可读性强,意义清楚整洁严谨、风格统一文档预期读者本文档的预期读者包括ESB建设项目开发组全体成员:技术管理人员、系统设计人员、系统开发人员、系统测试人员、系统维护人员、推广培训人员及其他相关人员。文档适用范围本文档适用于所有与南车电机ESB建设项目的相关的开发ESB开发详解ESB开发工具调整PrimetonESB设置作者:设置为开发人员姓名部门:南车电机信息技术管理部默认Module名称:设置为com.南车电机Java代码样式新建南车电机(南车电机信息技术部)代码样式。空白行(N):第一个声明前面(F):设为1。其余默认。新行:在空的枚举声明中(E)不选中。其余默认。自动换行:最大行宽设为200。其余默认。Java代码开发过程中使用Ctrl+Shift+F进行代码格式化。服务定制包(平台组建立)创建原则按业务域划分,如:任务管理器(公共、任务、业务域)命名原则com.南车电机+系统域名称,使用有意义的英文单词,全部使用小写字母,如:com.csr.motor.pdm命名规则通讯协议(大写)+工程名称,全部使用大写字母,字符长度不能超过20个字符,如:HTTP_pdm。渠道创建HTTP(JSON)渠道HTTP(JSON)渠道参数使用下面表格的认定的值。属性值说明编号HTTP_pdm名称HTTP服务主机名localhost端口号10000上下文pdm协议类型HTTP最小实例数10用于指定对象池的最小实例数。最大实例数1000用于指定对象池的最大实例数。实例递增数1有新请求且对象池没有空闲实例时,每次创建多少新的空闲实例。实例空闲时间60用于指定实例的空闲时间,单位秒。

当空闲的实例数超过最小实例数时,超出的实例在属性指定的时间后被回收。处理器获取超时时间5用于指定获取渠道处理器的超时时间,单位秒。备注:WebService(SOAP)渠道WebService(SOAP)渠道参数使用下面表格的认定的值。属性值说明编号WEBSERVICE_pdm名称WebService服务主机名localhost端口号10001上下文pdm协议类型HTTP最小实例数10用于指定对象池的最小实例数。最大实例数1000用于指定对象池的最大实例数。实例递增数1有新请求且对象池没有空闲实例时,每次创建多少新的空闲实例。实例空闲时间60用于指定实例的空闲时间,单位秒。

当空闲的实例数超过最小实例数时,超出的实例在属性指定的时间后被回收。处理器获取超时时间5用于指定获取渠道处理器的超时时间,单位秒。备注:数据转换必须在架构设计目录下的java文件夹下创建扩展实现类所属包必须为com.csr.motor.architecture.transport.dataexchange扩展实现类必须以DataExchange结束。其他请详见JAVA开发规范扩展实现必须在架构设计目录下的java文件夹下创建。扩展实现类所属包必须为com.csr.motor.architecture.transport。扩展实现类必须以Transport结束。其他请详见JAVA开发规范拦截器开发主机服务拦截器必须在架构设计目录下的java文件夹下创建拦截器包:com.csr.motor.architecture.handler.transport.+渠道名称(以小写字母开头,其他单词首字母大写,其他为小写字母),如:com.csr.motor.architecture.handler.transport.httpReceive拦截器类名必须以Receive结束。Send拦截器类名必须以Send结束。Request拦截器类名必须以Request结束。注册拦截器类名必须以Launch结束。其他请详见JAVA开发规范通道命名规则OA+“_”+目标主机简称,全部使用大写字母,字符长度不能超过20个字符,如:OA_ESBESB通道ESB通道除红色字体参数外的参数使用下面表格的认定的值。属性值说明编号OA_ESB名称ESB通道请求URLhttp://待定最小线程数500用于指定对象池的最小实例数。最大线程数500用于指定线程池的最大线程数。存活时间60用于指定实例的空闲时间,单位秒。

当空闲的实例数超过最小实例数时,超出的实例在属性指定的时间后被回收。队列大小100当线程池最小线程数被全部用完后,新的处理请求会被丢入队列,当队列满时,会创建新的线程处理请求,但不会超过最大线程数。当队列已满并且也达到了最大线程数后,会调用拒绝策略拒绝新的处理请求。最小实例数500用于指定对象池的最小实例数。最大实例数500用于指定对象池的最大实例数。实例递增数1当对象池中没有空闲实例的时候,每次创建多少新的空闲实例。实例空闲时间60用于指定实例的空闲时间,单位秒。

当有大于最小实例数的实例存在时,该属性生效。访问器获取超时5用于指定获取通道访问器的超时时间,单位秒。备注:MQ通道MQ通道除红色字体参数外的参数使用下面表格的认定的值。属性值说明编号OA_MQ名称MQ通道IP地址待定MQ接收队列名待定最小线程数500用于指定对象池的最小实例数。最大线程数500用于指定线程池的最大线程数。存活时间60用于指定实例的空闲时间,单位秒。

当空闲的实例数超过最小实例数时,超出的实例在属性指定的时间后被回收。队列大小100当线程池最小线程数被全部用完后,新的处理请求会被丢入队列,当队列满时,会创建新的线程处理请求,但不会超过最大线程数。当队列已满并且也达到了最大线程数后,会调用拒绝策略拒绝新的处理请求。最小实例数500用于指定对象池的最小实例数。最大实例数500用于指定对象池的最大实例数。实例递增数1当对象池中没有空闲实例的时候,每次创建多少新的空闲实例。实例空闲时间60用于指定实例的空闲时间,单位秒。

当有大于最小实例数的实例存在时,该属性生效。访问器获取超时5用于指定获取通道访问器的超时时间,单位秒。备注:数据转换必须在架构设计目录下的java文件夹下创建扩展实现类所属包必须为com.csr.motor.architecture.endpoint.dataexchange扩展实现类必须以DataExchange结束。其他请详见JAVA开发规范扩展实现必须在架构设计目录下的java文件夹下创建。扩展实现类所属包必须为com.csr.motor.architecture.endpoint.handler。扩展实现类必须以Handler结束。其他请详见JAVA开发规范拦截器开发主机服务拦截器必须在架构设计目录下的java文件夹下创建拦截器包:com.csr.motor.architecture.handler.endpoint.+通道名称(以小写字母开头,其他单词首字母大写,其他为小写字母),如:com.csr.motor.architecture.handler.endpoint.httpReceive拦截器类名必须以Receive结束。Send拦截器类名必须以Send结束。Request拦截器类名必须以Request结束。注册拦截器类名必须以Launch结束。其他请详见JAVA开发规范业务建模数据类型命名规则数据类型:使用有意义的英文单词简写,英语单词首字母使用大写,其他使用小写字母,字符长度不能超过20个字符。如:PdmString数据类型包:自定义数据类型必须创建在包com.csr.motor.datatype下。实现规范第一步:扩展com.primeton.ESB.api.data.AbstractDatatype类,在com.csr.motor.datatype包下增加以DataTypeDefinition为参数的构造函数,实现doInFormat,doInParse和getJavaType方法。第二步:修改数据类型配置文件。完成自定义数据类型定义后,将数据类型定义添加到业务建模->数据类型->data-type.xml文件中,在XML标签<configuration></configuration>中增加如下内容:<data-typename="长整形"id="long_type"impl-class="com.csr.motor.impl.data.type.CustDataType"

xsd-type="long">

<description>长整型,基于java.lang.Long</description>

</data-type>其中name,id,impl-class和xsd-type为必填项,其含义分别如下:属性名称属性描述name数据类型的名称id数据类型的标识impl-class数据类型的实现类xsd-type本数据类型映射的xsd类型数据字典命名规则数据字典分类目录:设定为工程名称。数据字典名称:META_DICT元数据:D_+使用有意义的英文单词简写,名字必须以一个小写字母开头,后面的单词用大写字母开头,字符长度不能超过20个字符,如:D_custName数据字典通过ESB向导创建数据字典。数据字典元素维护通过数据字典的配置功能进行配置维护。导入元数据信息,导入的表格举例如下:类别字典编号字典名称字典描述校验规则范围KEYVALUECSRsex性别性别validType:'length[6,6]'M男F女数据模型命名规则数据集合名称:按业务域对进行分类,业务域名称全部使用大写,如:PUB、CSR等数据模型名称:使用有意义的英文单词全拼或简写,英文单词首字母使用大写字母,其他使用小写字母,字符长度不能超过20个字符,如:CustInfo数据模型通过ESB向导创建数据模型集通过ESB的可视化操作界面进行数据模型维护工作。通过表格方式进行数据模型导入。表格模板如下:中文名英文名唯一索引非唯一索引描述字段序号数据字典编号字段英文名字段中文名字段类型长度主键否空值验证备注报文定义命名规则渠道报文:报文类型简称(J/X)+Req/Res(请求/响应)+交易码,字符长度不能超过20个字符,如:HCustSrvOnLineRdu通道报文:目标系统简称(大写字母开头)+Req/Res(请求/响应)+目标主机交易码,字符长度不能超过20个字符,如:CoreReqCstSrvRdu报文分类目录渠道报文分类目录:报文类型简称(J/X)+_+业务域,全部使用大写字母,字符长度不能超过20个字符,如:J_CSR,X_CSR通道报文分类目录:目标主机简称+目标系统的简称,如:与核心对接=ESB_CORE报文配置通过ESB向导创建报文信息通过ESB报文编辑界面进行报文定义及维护通过表格导入的方式创建报文,导入的表格模板如下:所属分类交易码交易名称描述英文名称报文Key中文名称是否必输备注输入数据字典名称报文节点名称卡号N数据模型名称(START)报文节点名称起始日期Y数据字典名称报文节点名称结束日期Y数据模型名称(END)报文节点名称交易金额N输出数据字典报文节点名称卡号N数据模型名称(START)报文节点名称起始日期Y数据字典名称报文节点名称结束日期Y数据模型名称(END)报文节点名称交易金额N服务定制主机服务命名规范主机服务分类目录:目标主机简称+“_”+目标系统简称,全部使用大写字母,字符长度不能超过20个字符,如:ESB_CORE。主机服务名称:目标系统简称+_+主机交易码,目标系统使用有意义的英文单词全拼或简写,英文单词首字母使用大写字母,其

温馨提示

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

评论

0/150

提交评论