下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
国家电网公应用系统统一(SG-UAP任务调度使用信息通信产业研发中修订记新增5.3入8910751112修改6引 概 适用范 ....................................................................................................................6执行组件开 配置依赖 执行组件实 任务配 配置UAP项 配置任 集成组件开发与部 功能说 集成执行组件运行机 编写Java执行组件实 在Java执行组件中获取任务信 验证集成执行组 输入正确地 可能出现的错 组件定 执行组件分 执行组 动态组件...........................................................................................................任务定 功能说 任务分 新建任务分 任务分组重命 任务分组删 刷新、上移、下 任务配 新建任 调用执行组 表达式规 简单规 编辑任 删除任 任务调度的导出和导 任务导 任务导 任务.........................................................................................................................功能说 任务..................................................................................................................功能说 操作说 运行日 功能说 操作说 操作日 功能说 操作说 图形分析统 功能说 任务使用频率分 异常任务分 超时任务分 执行任务量分 引F0501F0502任 接F0503F0504功能点编高高任务执行和高异常信息的接收并显示;可以手动方式控制任务的执中中中中表格112345678执行组件开将任务执行组件依赖包com.sgcc.ua ponent引入UAP模块项目33packagepackage publicclassMyTaskBizcimplementsITaskDispatchService ponentcompreturn}}springIOC<bean<beanid="myTaskBizc"<module:service<module:serviceid="myTaskService"ce.ITaskDispatchService"ranking="100"<module:service1)springbeanidID;UAP 343536 37任务调度调度规则配置最后,在完成添加任务之后,启动任务即可。任务配置具体步骤见第4,5,6,7章节集成组件开发与任务调度组件是在Quartz基础上扩展开发任务和任务建模工具任务以Web标准接口、任务执行日志记录、多任务组合、任务调度、实时任务等功能特点。任务调度组件是在Quartz基础上扩展开发的任务和任务建模工具,任务以Web方式实现控制界面、分析管理图表,任务调度提供开放式的任务务组合、任务调度、实时任务等功能特点。springBeanbundleITaskDispatchService,BeanOSGI到组件bundle中。从而执行组件可以接受或本地任务调度引擎的触发调restful方式,业务系统需要引入任务调度执行组件bundle(com.s ponent),在执行组件bundle内会自动发布两个rest服务:系统调用post服务 测试连接的get服务 {serviceid},{serviceidID本地部署方式,业务系统需要引入任务调度模块bundle(com.sgcc.uap.tponent),在调度模块bundle内会调用A中在OSGI容器过的服务,并且自动发布一个测试连接的get服务:系统客户端名称/bundle名称/过滤资源字符串/rest1级/rest2级/服务Iponents/testTaskServiceWebService方式,业务系统发布WebService服务后,任务调度基于Xfire框架根据URI例如:sRemote/services/ITaskDispatchWebService?wsdl对象以消息形式发到中间件,业务系统根据自己配置的消息队列自行消息restrest-MANIFEST.MF--4bundle(com.sgcc.uap.taskdispatch.c查找bundle(com.sgcc.ua “OK”,如图-5所示。业务系统实现类参考。URI,-6所示rest组件实Class,Interfaces ponent-AddITaskDispatchService,如图-2:生成Class后如图-3所示,在 ponent方法中实现执行组件的业务方法,返回值同样为ponent,为保证RestTemte通信正确此处返回值不能为null,具体实现内容由业务系统决定。具体填充内容业务系统决定。参 ponent类的主要属性和描述jobjobjob为业务系统发布rest组件服1、将组件实现配置到SpringIOC<bean<beanid="testTask"2、将spring容器中的Bean实例发布成OSGI服务,并注入到执行组件bundl <module:serviceid="testTaskService"vice.ITaskDispatchService"ponent"idID,IDServiceID<module:serviceid="testTaskService"vice.ITaskDispatchService"ponent"rest-MANIFEST.MF--4bundle(com.sgcc.uap.taskdispatch.c查找bundle(com.sgcc.ua “OK”,如图-5所示。业务系统实现类参考。URI,-6所示编写本地组件实Class,Interfaces ponent-AddITaskDispatchService,如图-2:生成Class后如图-3所示,在 ponent方法中实现执行组件的业务方法,返回值同样为ponent,为保证RestTemte通信正确此处返回值不能为null,具体实现内容由业务系统决定。具体填充内容业务系统决定。参 ponent类的主要属性和描述jobjobjob为业务系统发布本地组件服1、将组件实现配置到SpringIOC<bean<beanid="testTask"2、将spring容器中的Bean实例发布成OSGI服务,并注入到执行组件bundl <module:serviceid="testTaskService"vice.ITaskDispatchService"ponent"idID,IDServiceID<module:serviceid="testTaskService"vice.ITaskDispatchService"ponent"WebServiceWebserviceurl?WSDL编写WebService组件实Class,Interfaces ponent-AddITaskDispatchWebService,如图-2:生成Class后如图-3所示,在 ponent方法中实现执行组件的业务方法,返回值同样为ponent,为保证RestTemte信正确此处返回值不能为null,具体实现内容由业务系统决定。具体填充内由业务系统决定。参 ponent类的主要属性和描述jobjobjobITaskDispatchWebService接口比ITaskDispatchService多一个Test方为业务系统发布WebService组件服务参1、在SpringIOC容器中XFireSpringServletOSGI映射<<module:servlet>2、引入3、业务Bean,将业务Bean注入到spring发布的XFire服务中<beanid=<beanid="componentServiceBean"<propertyname="hibernateDao"ref="hibernateDao"<beanid="componentService"name="componentService"<propertyname="serviceBean"<property JMS在perties中配置(不配置默认:tcp://localhost:61616)Webserviceurl?WSDL点击测试组件可以登陆activeMQ中间点界面查看com.sgcc.uap.jms.test度的测试队列并且任务调度提供该队列的,如果测试成功了说明用户配置TASKDISPATCH_JMS_URL(注意这里测试的并不是业务系统的队列该例子业务系统队列是:com.bussiness.testSerivceIDURIJMS组件Class,Interfaces ponent-代码继承:javax.jms.MessageListener接口实现, component=( ponent)objMsg.getObject();通过参 ponent类的主要属性和描述jobjobjob为业务系统发布JMS组件服1、工厂<<beanid="receiverPoolConnectionFactory"<property<propertyname="maxConnections"<property<propertyname="brokerURL"value="tcp://localhost:61616"/>2 队列名称,下例的com.bussiness.test就是该业务系统的队列<<bean<constructor-arg<bean<beanid="messageListener"class="com.TestReceiverMessageListener"><propertyname="hibernateDao"ref="hibernateDao"<beanid="listenerContainer"<propertyname="connectionFactory"ref="receiverPoolConnectionFactory"/><propertyname="destination"ref="destination"<propertyname="messageListener"<propertyname="maxConcurrentConsumers"value="10"<propertyname="idleTaskExecutionLimit"value="2"2.82ITaskDispatchServiceWithRecoverITaskDispatchServiceITaskDispatchWebServiceITaskDispatchServiceWithRecoverITaskDispatchWebServiceITaskDispatchServiceWithRecover和ITaskDispatchWebServiceWithRecover接口中添加了新的任务恢复执行的方法 ponent(),该方法需要用户根据个性业务需求去实现在业务系统中引入依赖MANIFEST.MF1org.codehaus.jsckson.coreorg.codehaus.jackson.mapperbundle在JavaStringjobnamearg0.getJobName()JsonNodejnarg0.getJsonParam();Stringjobnamearg0.getJobName()JsonNodejnarg0.getJsonParam();ObjectMapperObjectMapperom=tryMap<String,String>m=Stringusernamem.get("username");//获取任务执行组件中的参数值Stringdept=m.get("dept");//获取任务执行组件中的参数值}catch(JsonParseExceptione1)}catchExceptione1)}catch(IOExceptione1){}在Java执行组件中获取动态信在任务定义中添加动态请参考《SG-UAP_V2.0_任务调度使用手Stringjobname=arg0.getJobName();//获取任务名称JsonNodejnarg0.getJsonParam();//获取任务的参数数据StringscriptedResultarg0.getScriptedResult()本在Stringjobname=arg0.getJobName();//获取任务名称JsonNodejnarg0.getJsonParam();//获取任务的参数数据StringscriptedResultarg0.getScriptedResult()本通过来调用JAVA执行组1:更 tformconfig.xml文件,将任务调度发布方式改为本=#Configure= 2:xmlJAVA<?xml<?xmlversion="1.0"encoding="UTF-<beansxmlns="""hh<beanid="tb"ponent.impl.TestBean"<module:serviceid="tbService"IBridge"ranking="100"includeBundle="com.sgcc.uap.scriptengine"3:JAVApackagepackageimportpublicclassTestBeanimplements publicObjectdispatch(Objectob)throwsScriptDispatchException//TODOAuto-generatedmethodstubSystem.out.println("TestBeangetScriptInstance");return}}}服务配置完成后,执行组件bundle(com.sgcc.ua t)会自动发布两个Rest服务,其中一个功能为测试并检查服务ID。组件地址组成:系统客户端名称/bundle名称/过滤资源字符串/rest资源名1级/rest资源名2级/服务ID,即:/sguap- e在非IE浏览器地址栏输入地址rest地址,本案例以chrome测输入正确地Rest JsonWebService输入地址正确地址,将serviceId填写错 JsonServiceID(红字部分)找不IP 输入系统客户端名称错误或Rest WEB输入错误的执行组件bundle名 结论:UAPOSGI 结论:UAP组件定显示新建的执行组件分组,利于分组管理。在“任务调度”页面,点击【任务定义-组件定义】按钮,系统进入相应权限下的默认页(目前任务调度中“用电管理系统“BPM演示系统“生产管理系统当前用户权限下,单击右键选择新建组件分组以设置新分组,例如:在用电管理ServiceIdServiceIdServerID对应6.1.2中定义的<module:service/>id值Uri地址为业务组件服务器地址:目前URI。REST 点击“定义”画笔图标,弹出编辑groovy框,在编辑groovy框中进4.2任务策略定或在左侧导航树中选择“用电管理系统——dty用电管理系统”分组后,“若“新增任务分组网页框中必填“任务分组名称字段不输入任何信息,鼠标右击选择“3月-任务”任务分组,在系统弹出菜单选项中,选择“分组重命名间、执行超时时间、和描述7个字段可;“0,0数”字段的信息,如下图0“10TAB功能说调用执行组件“执行组件”TAB 网页框;点击【查看】按钮后,系统会弹出被选组件的“任务执行组件明细”网页框,SeviceId“URI调用执行组件调用执行组件调用执行组件参数编 lines,本动态参数进行解析。网页框“执行组件”TAB页,并给以保存成功的相应提示,如下图:功能说操作说触添编 查1”tab页框,只可查看不可编辑删TAB功能说操作说重复次数(-1):此项为必填项,默认显示为空,可手动输入,最大值为604800,604800,最小值0;5触添编网页框查1”tab删TAB功能说操作说功能说操作说(分组导出(包含子分组下任务导出功能说ABAA下的任务以及子分组B操作说1选择“是,系统弹出路径可供选择位确认好位置后,点击“确认”按钮,系统提示成功。再返回至,将zip将分组解压在该文件(测试分组)xml2;3xmlxmlcomponent_组件主键_longjob_任务主键_long分组导出(不包含子分组下任务导出功能说操作说12选择“否,系统弹 位3确认好位置后,点击“确认”按钮,系统提示成功。再返回至,将zip4将分组解压2;xmlxmlcomponent_组件主键_longjob_任务主键_long导出任功能说操作说功能说使用原路径导功能说AB,BA的数据在用电任务组2中看不到,而用电任务组1下可以看到。操作说zip,不使用原路径功能说ABB例如下面的例子是将导出的“用电任务组1”文件导入到用电任务组2中,导入的数据在用电任务组2中看到。操作说系统弹出“上传任务包”网页框zip,重复策略使用忽略导功能说替换已经存在的任务A。操作说 任务1,在导出后将其组件名改为“替换zzc,为了显示效果)zip 重复策略使用替换导功能说A(AA。操作说选择用电任务组1后,在菜单中点击“导入任务”按钮(在导入前已经导出组件名为“替换”的用电任务1,在导出后将其组件名改为“替换zzc,为了显示效果),重复策略使用创建副本导功能说将分组中导出的任务A建一个任务AA。操作说zzc)zip排除日历定Qtz引擎的CaendrQtz的Caendr配置图形化处理,实现了任务在调度执行时按照一定的规则排除掉用户不需要执行的时间点。任务 功能说功能说“任务”tab页,主要用于当前权限下对所有任务进行启动、停止和立即执行的操“任务”TAB页面中,左侧显示为搜索栏和当前权限下所有的任务导航树,右侧显示;在任务页面选择一条任务,点击“运行日志”TAB页,系统将进入到“运行日志”“运行日志”TAB查询栏中包含“起始时间,截止时间,状态:运行中,完成,异常,/超时:,超时”等查询条件,和【查询】与【重置】两个按钮;触发规则描述,触发时间,/超时,完成时间,状态”的相关信息;“任务日志”TAB由于关注点的关注形式为邮件,所以需要在UAP项目中对邮件参数进行配置,在 验证(默认 任务定 权限管新建的系统,利于系统管理。用户信息与修 】按在弹出的当前登录用户修改页面分别填写当前登录和修改后的点【保存】图形分析统内存模式任务配quartz2.1.4RAMJobStorespring3.1任务调度对spring3.1quartz接口进行调整,用户可以根据APIRAMJobStore模式quartzspringquartz2.1.4RAMJobStorecom.sgcc.uap.taskdispatch.spring.extendorg.quartz这两个模块。publicclassMyTaskpublicvoidSystem.out.println("**********Mytaskis}}配置文件工作的bean<beanid="myJob"class="com.sgcc.uap.taskdispatch.springscheduler.test.MyTask"/>job<beanid="myJobDetail"<property<refbean="myJob"<propertyjob<beanid="crontestJobTrigger"<property<refbean="myJobDetail"<property<value>0/5****<beanname="scheduler"lazy-init="false"autowire="no"<property<refbean="crontestJobTrigger"数据库兼容性配\\<beanid="dataSource"name="dataSource"class=" <propertyname="
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 成本效益分析工具操作手册
- 2025有条件买卖合同样本
- 2025车间级安全教育试题及答案
- 2025年工程管理年终工作总结(2篇)
- 2025新款电器电子产品购销合同
- 2025标准版家庭护工劳动合同样本
- 《2025重型货车租赁协议》
- 2025企业间租赁合同范本
- 2025版私人委托合同书
- 2025劳动合同书范例模板
- 政治经济学5章习题(有答案)
- 机器人工程大一职业规划书(8篇)
- 能量均分定理理想气体的内能
- 功能高分子04-电功能高分子材料
- 建筑企业管理制度大全-精品完整版
- GB/T 1185-2006光学零件表面疵病
- 锚杆工程隐蔽验收记录
- 2020年汽车物流企业组织结构及部门职责
- 混凝土原理与设计10压弯承载力课件
- 幼教培训课件:《家园共育体系建构与实施策略》
- 突发公共卫生事件健康教育与健康促进课件
评论
0/150
提交评论