专利名称:应用加载方法及系统的制作方法
应用加载方法及系统
技术领域:
本发明涉及网络通信技术,特别涉及一种应用加载方法及系统。
背景技术:
开放成为互联网发展的必然趋势,许多公司竞相推出自己的开放平台。在开放平台上,可承载大量的第三方应用,用户可以从这些应用列表中选择自己需要的应用进行安装。随着应用的增多,开放平台负责加载的应用也越来越多,可能使得开放平台不堪重负,降低了开放平台加载应用的性能,且对应用的加载方式单一。
发明内容基于此,有必要提供一种能提高开放平台性能的应用加载方法。一种应用加载方法,包括以下步骤:获取应用加载请求;根据所述应用加载请求获取应用类型;判断进程策略管理器中是否已存在与所述应用类型对应的进程,若是,则将所述应用加载到所述进程中,若否,则创建一个与所述应用类型对应的新进程,将所述应用加载到所述新进程中。此外,还有必要提供一种能提高开放平台性能应用加载系统。—种应用加载系统,包括:获取模块,用于获取应用加载请求,并根据所述应用加载请求获取应用类型;判断模块,用于判断进程策略管理器中是否已存在与所述应用类型对应的进程;加载模块,用于在所述判断模块判断出已存在与所述应用标识对应的进程时,将所述应用加载到所述进程中;创建模块,用于在所述判断模块判断出不存在与所述应用标识对应的进程时,创建一个与所述应用类型对应的新进程,所述加载模块还用于将所述应用加载到所述新进程中。上述应用加载方法及系统,根据应用加载请求中应用类型,判断是否存在与应用类型对应的进程,若存在,则将应用加载到进程,若不存在,则将创建与应用类型对应的新的进程,将应用加载到新的进程, 如此将应用加载在开放平台之外的进程中,减轻了开放平台的加载负担,提高了开放平台的性能。
图1为一个实施例中应用加载方法的流程示意图;图2为另一个实施例中应用加载方法的流程示意图;图3为一个实施例中应用加载系统的内部结构示意图4为另一个实施例中应用加载系统的内部结构示意图。
具体实施方式下面结合具体的实施例及附图对技术方案进行详细的描述。如图1所示,在一个实施例中,一种应用加载方法,包括以下步骤:步骤S110,获取应用加载请求。本实施例中,应用是指制作并在平台上发布的应用程序,如压缩应用程序。为方便用户使用,需加载应用。步骤S120,根据该应用加载请求获取应用类型。本实施例中,平台上的进程策略管理器(ExeAgentMgr)预设了应用类型。平台获取到加载应用的请求后,从应用加载请求中获取应用类型。具体的,根据应用加载请求获取应用配置文件,从该应用配置文件中获取该应用类型。应用配置文件中包含type字段,该type字段用于标识应用类型。应用类型可如Web应用或本地应用等。该应用类型预设方式包括:(I) 一个应用为一个应用类型,如应用A、B、C等各位一个应用类型。(2) 一类应用为一个应用类型,如应用A和B为一个应用类型,应用C和D为一个
应用类型等。(3)所有应用为一个应用类型,如应用A、B、C等所有应用为一个应用类型。
步骤S130,判断进程策略管理器中是否已存在与该应用类型对应的进程,若是,执行步骤S140,若否,执行步骤S150。本实施例中,预先设定一个应用类型对应一个进程。判断平台的进程策略管理器中是否已存在与应用类型对应的进程,若存在,则将该应用加载到进程中,若不存在,则创建一个与该应用类型对应的新的进程,将该应用加载到新的进程中。具体的,如应用A的应用类型为001,判断进程策略管理器中是否存在与应用类型001对应的进程,若存在,则将应用A加入进程中,若不存在创建一个与应用类型001对应的进程,将应用A加入创建的新的进程中。步骤S140,将该应用加载到该进程中。步骤S150,创建一个与该应用类型对应的新进程,将该应用加载到该新进程中。在一个实施例中,预设一个应用为一个应用类型时,则如图2所示,上述应用加载方法包括步骤:步骤S201,获取应用加载请求。步骤S203,根据该应用加载请求获取应用标识。具体的,获取的应用加载请求中包含应用标识,从该加载请求中获取应用标识。应用标识是用于唯一标识一个应用,如应用A的标识为0001。步骤S205,根据该应用标识从进程策略管理器中按照预设的应用标识与进程的对应关系查找对应的进程。具体的,可预先设置应用标识与进程的对应关系。步骤S207,判断该进程策略管理器中是否已存在与该应用标识对应的进程,若是,则执行步骤S209,若否,则执行步骤S211。
具体的,平台上的进程策略管理器(ExeAgentMgr)查询是否已存在与该应用标识对应的进程,若存在,则将该应用加载到该存在的进程中,若不存在,则创建一个新进程,然后将该应用加载到新进程中。步骤S209,将该应用加载到该进程。步骤S211,创建一个与该应用标识对应的新进程,将该应用加载到该新进程。具体的,进程策略管理器申请创建一个新进程exe,将该应用加载到该新进程中。在一个实施例中,预设一类应用为一个应用类型时,可按照步骤S130至步骤S150将应用加载。如此可将一类应用加载在一个进程中。在一个实施例中,预设所有应用为一个应用类型时,按照步骤S130至步骤S150完成应用加载。具体的,根据该应用加载请求,将该应用加载到平台所在的进程。如图3所不,在一个实施例中,一种应用加载系统,包括获取模块10、判断模块20、加载模块30和创建模块40。其中:获取模块10用于获取应用加载请求,并根据该应用加载请求获取应用类型。本实施例中,应用是指制作并在平台上发布的应用程序,如压缩应用程序。为方便用户使用,需加载应用。平台上的进程策略管理器(ExeAgentMgr)预设了应用类型。获取模块10获取到加载应用的请求后,从应用加载请求中获取应用类型。具体的,获取模块10根据应用加载请求获取应用配置文件,从该应用配置文件中获取该应用类型。应用配置文件中包含type字段,该type字段用于标识应用类型。应用类型可如Web应用或本地应用
坐寸ο判断模块20用于判断进程策略管理器中是否已存在与该应用类型对应的进程。本实施例中,预先设定一个应用类型对应一个进程。判断模块20判断平台的进程策略管理器中是否已存在与应用类型对应的进程,若存在,则加载模块30将该应用加载到进程中,若不存在,则创建模块40创建一个与该应用类型对应的新的进程,将该应用加载到新的进程中。具体的,如应用A的应用类型为001,判断进程策略管理器中是否存在与应用类型001对应的进程,若存在,则加载模块30将应用A加入进程中,若不存在,则创建模块40创建一个与应用类型001对应的进程,加载模块30将应用A加入创建的新的进程中。在一个实施例中,如图4所示,上述应用加载系统,除了包括获取模块10、判断模块20、加载模块30和创建模块40,还包括预设模块50和查找模块60。预设模块50预设一个应用为一个应用类型,如应用A、B、C等各位一个应用类型。则获取模块10还用于根据该应用加载请求获取应用标识。具体的,获取的应用加载请求中包含应用标识,从该应用加载请求中获取该应用标识。应用标识是用于唯一标识一个应用,如应用A的标识为0001。查找模块60用于根据该应用标识从进程策略管理器中按照预设的应用的标识与进程的对应关系查找对应的进程。具体的预先设置应用标识与进程的对应关系。查找模块60根据获取的应用标识从数据库中的预先设置的应用标识与进程的对应关系查找与该应用对应的进程。判断模块20用于判断进程策略管理器中是否已存在与该应用标识对应的进程。具体的,然后,从平台上的进程策略管理器(ExeAgentMgr)查询是否已存在与该应用标识对应的进程。
加载模块30还用于在判断模块20判断出已存在与该应用标识对应的进程时,将该应用加载到与该应用标识对应的进程。创建模块40用于在判断模块20判断出不存在与该应用标识对应的进程时,创建一个与应用标识对应的新进程,加载模块30还用于将该应用加载到该新进程。在一个实施例中,预设模块50预设一类应用为一个应用类型,如应用A和B为一个应用类型,应用C和D为一个应用类型等。则获取模块10还用于根据该应用加载请求,获取该应用类型。查找模块60根据该应用类型从进程策略管理器中按照预设的应用的类型与进程的对应关系查找对应的进程。具体的预先设置应用类型与进程的对应关系。查找模块60根据获取的应用类型从进程策略管理器中按照预先设置的应用类型与进程的对应关系查找与该应用对应的进程。判断模块20还用于判断进程策略管理器中是否已存在与该应用类型对应的进程。加载模块30还用于在判断模块20判断出已存在与该应用类型对应的进程时,将该应用加载到该进程中。创建模块40还用于在判断模块20判断出不存在与该应用类型对应的进程时,创建一个与应用类型对应的新进程,加载模块20还用于将应用加载到该新进程。具体的,创建模块40申请创建一个新进程exe,将该应用加载到该新进程中。如此,可将相同类型的应用加载到相同的进程中。在一个实施例中,预设模块50预设所有应用为一个应用类型,如应用A、B、C等所有应用为一个应用类型。判断模块20判断进程策略管理器中是否已存在与该应用类型对应的进程,若存在,则加载模块30将该应用加载到该进程中,若否,则加载模块30还用于根据该应用加载请求,将该应用加载到平台所在的进程。若不存在,则创建模块40创建一个与该应用类型对应的新的进程,加载模块30将该应用加载到新的进程中。上述应用加载方法及系统,根据应用加载请求中应用类型,判断是否存在与应用类型对应的进程,若存在,则将应用加载到进程,若不存在,则将创建与应用类型对应的新的进程,将应用加载到新的进程,如此将应用加载在开放平台之外的进程中,减轻了开放平台的加载负担,提高了开放平台的性能。此外,将相同类型的应用加载到相同的进程中,进一步减轻了开放平台的负担,且提高了进程的利用率。以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
权利要求
1.一种应用加载方法,包括以下步骤: 获取应用加载请求; 根据所述应用加载请求获取应用类型; 判断进程策略管理器中是否已存在与所述应用类型对应的进程,若是,则将所述应用加载到所述进程中,若否,则创建一个与所述应用类型对应的新进程,将所述应用加载到所述新进程中。
2.根据权利要求1所述的应用加载方法,其特征在于,还包括步骤:预设一个应用为一个应用类型; 所述根据所述加载请求获取应用类型的步骤为: 根据所述应用加载请求获取应用标识; 所述应用加载方法还包括: 根据所述应用标识从进程策略管理器中按照预设的应用标识与进程的对应关系查找对应的进程; 判断所述进程策略管理器中是否已存在与所述应用标识对应的进程,若是,则将所述应用加载到所述进程,若否,则创建一个与所述应用标识对应的新进程,将所述应用加载到所述新进程。
3.根据权利要求1所述的 应用加载方法,其特征在于,还包括步骤:预设一类应用为一个应用类型。
4.根据权利要求1所述的应用加载方法,其特征在于,还包括步骤:预设所有应用为一个应用类型。
5.根据权利要求1所述的应用加载方法,其特征在于,所述根据所述加载请求获取应用类型的步骤为: 根据所述应用加载请求获取应用配置文件; 从所述配置文件中获取所述应用类型。
6.—种应用加载系统,其特征在于,包括: 获取模块,用于获取应用加载请求,并根据所述应用加载请求获取应用类型; 判断模块,用于判断进程策略管理器中是否已存在与所述应用类型对应的进程; 加载模块,用于在所述判断模块判断出已存在与所述应用标识对应的进程时,将所述应用加载到所述进程中; 创建模块,用于在所述判断模块判断出不存在与所述应用标识对应的进程时,创建一个与所述应用类型对应的新进程,所述加载模块还用于将所述应用加载到所述新进程中。
7.根据权利要求6所述的应用加载系统,其特征在于,还包括: 预设模块,用于预设一个应用为一个应用类型; 所述获取模块还用于根据所述应用加载请求获取应用标识; 查找模块,用于根据所述应用标识从进程策略管理器中按照预设的应用标识与进程的对应关系查找对应的进程; 所述判断模块还用于判断进程策略管理器中是否已存在与所述应用标识对应的进程; 所述加载模块还用于在所述判断模块判断出已存在与所述应用标识对应的进程时,将所述应用加载到所述进程; 所述创建模块还用于在所述判断模块判断出不存在与所述应用标识对应的进程时,创建一个与所述应用标识对应的新进程,所述加载模块还用于将所述应用加载到所述新进程。
8.根据权利要求6所述的应用加载系统,其特征在于,还包括: 预设模块,用于预设一类应用为一个应用类型。
9.根据权利要求6所述的应用加载系统,其特征在于,还包括: 预设模块,用于预设所有应用对应一个应用类型。
10.根据权利要求6所述的应用加载系统,其特征在于,所述获取模块还用于根据所述应用加载请求获取应用配置文件 ,再从所述配置文件中获取所述应用类型。
全文摘要
本发明涉及一种应用加载方法及系统。该方法包括以下步骤获取应用加载请求;根据所述应用加载请求获取应用类型;判断进程策略管理器中是否已存在与所述应用类型对应的进程,若是,则将所述应用加载到所述进程中,若否,则创建一个与所述应用类型对应的新进程,将所述应用加载到所述新进程中。上述应用加载方法及系统,根据应用加载请求中应用类型,判断是否存在与应用类型对应的进程,若存在,则将应用加载到进程,若不存在,则将创建与应用类型对应的新的进程,将应用加载到新的进程,如此将应用加载在开放平台之外的进程中,减轻了开放平台的加载负担,提高了开放平台的性能。
文档编号G06F9/445GK103197935SQ20121000469
公开日2013年7月10日 申请日期2012年1月9日 优先权日2012年1月9日
发明者邹代柱, 彭勇, 游晶 申请人:腾讯科技(深圳)有限公司