[发明专利]一种基于Autofac支持按需加载的服务管理器的实现方法有效
申请号: | 201611145498.6 | 申请日: | 2016-12-13 |
公开(公告)号: | CN106775864B | 公开(公告)日: | 2020-04-17 |
发明(设计)人: | 王延东 | 申请(专利权)人: | 浪潮通用软件有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445 |
代理公司: | 济南信达专利事务所有限公司 37100 | 代理人: | 姜明 |
地址: | 250100 山东*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 autofac 支持 加载 服务 管理器 实现 方法 | ||
本发明公开了一种基于Autofac支持按需加载的服务管理器的实现方法,其实现过程为:将任务切分成若干个子任务,并将数据集划分为若干个数据片,根据每一个子任务及其对应的数据分片构建一个可并行执行的独立子任务包,将这些子任务包放入统一的线程池中进行独立的并行执行。本发明的一种基于Autofac支持按需加载的服务管理器的实现方法与现有技术相比,可以充分利用现有系统的资源,提高跑批处理的性能。在并行执行的过程中通过记录子任务执行状态与错误信息,数据执行状态与错误信息来对任务执行过程进行追踪与容错,实用性强,适用范围广泛。
技术领域
本发明涉及计算机技术领域,具体地说是一种基于Autofac支持按需加载的服务管理器的实现方法。
背景技术
智能客户端(Smart Client)技术是一种基于互联网(Internet)的富客户端技术。在客户端,采用富客户端(Rich Client)技术,可充分利用客户端机器的本地资源,为用户提供丰富的用户交互体验。与B/S(Browser/Server,浏览器/服务器)应用程序相比,可展现给用户的界面是像安装在本地桌面系统上的GUI(Graphics User Interface,图形用户界面)程序界面,它有很多的复杂界面交互元素如树、菜单、网格等,对用户的友好性和可交互性大大增强,可满足用户界面交互的各种个性化需求,并且可提供本地数据缓存、离线应用等强大功能。而与C/S(Client/Server,客户机/服务器)应用程序对比,智能客户端技术提供客户端程序的自动部署更新,避免了客户端程序维护的各种繁琐和困难。
智能客户端技术提供客户端程序的自动部署更新,避免了客户端程序维护的各种繁琐和困难,也为程序带来了其它方面的复杂性,我们本发明要讨论的服务管理就是其中之一。
面向对象的目标就是设计出高内聚、低耦合的程序。所谓耦合度,是指模块之间相互依赖性大小的度量,耦合度越小,模块的相对独立性越大。耦合关注的是某一模块和其他模块之间的关联性。所谓内聚度,是指模块内各成分之间相互依赖性大小的度量,内聚度越大,模块各成分之间联系越紧密,其功能越强。一个完整的系统,模块与模块之间,尽可能的使其独立存在。也就是说,让每个模块,尽可能的独立完成某个特定的子功能。模块与模块之间的接口,尽量的少而简单。
耦合关系不仅会出现在软件系统的各模块之间,也会出现在对象与对象之间。如何降低系统之间、模块之间和对象之间的耦合度,是软件工程永远追求的目标之一。软件专家Michael Mattson1996年提出了IOC理论,用来实现对象之间的“解耦”,目前这个理论已经被成功地应用到实践当中。
IOC 是 Inversion of Control 的缩写,也叫“控制反转”。它把传统上由程序代码直接操控的对象的调用权交给容器,通过容器来实现对象组件的装配和管理。所谓的“控制反转”概念就是对组件对象控制权的转移,从程序代码本身转移到了外部容器。IOC理论提出的观点大体是这样的:借助于“第三方”实现具有依赖关系的对象之间的解耦。
IoC的真正强大之处在于,在运行时而非编译时绑定类间关系。例如,你可以对一个接口进行两种实现:真正的实现和模拟(mock)的实现,而在运行时根据需要去决定真正调用哪一个实现。这尤其当你希望程序在不同场景下表现不同的行为时,这是非常好用的。
Autofac是目前.NET阵营中一款比较流行的解耦框架,以其轻量级、性能高等优点被广泛使用。在使用时发现,IoC配置一旦被加载后,需要遍历配置中每种对象的类型。而对于智能客户端软件,程序文件可能是在软件运行后才自动部署的,如何实现按需加载的服务管理器对于智能客户端程序尤为重要。
基于此,现提供一种基于Autofac支持按需加载的服务管理器的实现方法,基于Autofac框架提供一种按需加载的服务管理器,进而解决智能客户端模式下因程序文件可能后下载而不能使用解耦框架的问题。
发明内容
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮通用软件有限公司,未经浪潮通用软件有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611145498.6/2.html,转载请声明来源钻瓜专利网。