脚本管理方法、装置及系统与流程

文档序号:14443681阅读:313来源:国知局
脚本管理方法、装置及系统与流程

本发明涉及计算机技术领域,尤其是涉及一种脚本管理方法、装置及系统。



背景技术:

现如今,很多计算机项目都需要后台脚本定时去执行任务,随着web项目越来越多,脚本数量越来越多且分布在不同的服务器,在脚本管理较为混乱,通过人工管理脚本、部署脚本的方式,不仅容易出现问题,可靠性较差,而且效率低下。



技术实现要素:

有鉴于此,本发明的目的在于提供一种脚本管理方法、装置及系统,以改善现有技术中存在的人工管理脚本效率低下、可靠性较差的技术问题。

为了实现上述目的,本发明实施例采用的技术方案如下:

第一方面,本发明实施例提供了一种脚本管理方法,该方法应用于脚本管理系统,脚本管理系统包括主服务器,以及与主服务器通信连接的多个对象服务器;该方法由主服务器执行,包括:基于用户的录入数据生成脚本信息;脚本信息包括脚本文件和脚本文件对应的配置文件;查找脚本信息对应的对象服务器;将脚本信息发送给查找到的对象服务器,以使查找到的对象服务器根据配置文件执行脚本文件。

结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,上述查找脚本信息对应的对象服务器的步骤,包括:根据脚本信息确定脚本语言;根据脚本语言查找可支持脚本语言的对象服务器。

结合第一方面,本发明实施例提供了第一方面的第二种可能的实施方式,其中,上述录入数据包括脚本代码、脚本语言、脚本线程数、脚本关联信息和脚本执行时间信息中的多种。

结合第一方面,本发明实施例提供了第一方面的第三种可能的实施方式,其中,上述方法还包括:如果脚本信息异常,向关联终端发送异常提示。

结合第一方面的第三种可能的实施方式,本发明实施例提供了第一方面的第四种可能的实施方式,其中,上述向关联终端发送异常提示的步骤,包括:通过短信方式和/或邮件方式向关联终端发送异常报告单;异常报告单携带有异常位置和异常原因。

第二方面,本发明实施例还提供一种脚本管理装置,该装置应用于脚本管理系统,脚本管理系统包括主服务器,以及与主服务器通信连接的对象服务器;该装置设置于主服务器侧,包括:脚本生成模块,用于基于用户的录入数据生成脚本信息;脚本信息包括脚本文件和脚本文件对应的配置文件;查找模块,用于查找脚本信息对应的对象服务器;脚本发送模块,用于将脚本信息发送给对象服务器,以使对象服务器根据配置文件执行脚本文件。

结合第二方面,本发明实施例提供了第二方面的第一种可能的实施方式,其中,上述查找模块用于:根据脚本信息确定脚本语言;根据脚本语言查找可支持脚本语言的对象服务器。

结合第二方面,本发明实施例提供了第二方面的第二种可能的实施方式,其中,上述装置还包括:异常提示模块,用于如果脚本信息异常,向关联终端发送异常提示。

第三方面,本发明实施例提供了一种脚本管理系统,包括:主服务器,以及与主服务器通信连接的多个对象服务器;主服务器上设置有第二方面任一项的脚本管理装置。

第四方面,本发明实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序使处理器执行第一方面任一项的方法。

本发明实施例提供了一种脚本管理方法、装置及系统,脚本管理系统包括主服务器,以及与主服务器通信连接的多个对象服务器,主服务器可以基于用户的录入数据生成脚本信息,并将脚本信息发送给与其对应的对象服务器执行该脚本文件。这种方式可以较好地简化了人工管理脚本的繁琐,提升了脚本管理效率,而且也有效提升了脚本管理的可靠性。

本公开的其他特征和优点将在随后的说明书中阐述,或者,部分特征和优点可以从说明书推知或毫无疑义地确定,或者通过实施本公开的上述技术即可得知。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1示出了本发明实施例所提供的一种脚本管理方法流程图;

图2示出了本发明实施例所提供的一种脚本管理装置的结构框图;

图3示出了本发明实施例所提供的一种脚本管理系统的结构示意图;

图4示出了本发明实施例所提供的一种服务器的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

考虑到脚本数量众多时,依靠人工管理脚本可靠性较差,且效率低下,为改善此问题,本发明实施例提供的一种脚本管理方法、装置及系统,该技术可采用相应的软件和硬件实现,以下对本发明实施例进行详细介绍。

实施例一:

参见图1所示的一种脚本管理方法流程图,该方法应用于脚本管理系统,脚本管理系统包括主服务器(又可以称为管理后台),以及与主服务器通信连接的多个对象服务器(又可以称为环境服务器);该方法由主服务器执行,也即,该方法以从主服务器侧描述为例进行说明,包括以下步骤:

步骤s102,基于用户的录入数据生成脚本信息;脚本信息包括脚本文件和脚本文件对应的配置文件。在实际应用中,可以关联脚本文件和脚本文件对应的配置文件。

具体的,上述录入数据可以包括脚本代码、脚本语言、脚本线程数、脚本关联信息和脚本执行时间信息中的多种。其中,脚本线程数为脚本需要的线程数量,可以理解为一个线程就是一个任务。脚本关联信息包括:脚本所属项目信息、负责人信息、数据库(数据源)ip、账号、密码、任务详细描述等。为了确保脚本的准确性,还可以由人工进行审核,主服务器在确定人工审核完毕后,自动根据录入数据生成脚本文件和配置文件。脚本执行时间信息可以具体为系统执行任务的时间,在实际应用中,脚本执行时间信息可以通过一定的规则表达式实现,规则表达式可以采用数字、下划线等组合,为便于理解,举例如下:假设需要每周一至周五的每天23:00执行脚本任务,则可以设置规则表达式为1~5_23_00。此外,还可以设置其它规则表达式,诸如设置规则表达式的前位数字为星期,中位数字为日期,末位数字为分钟等,以上仅为简单示例,脚本执行时间信息可以根据实际需求而灵活设置,在此不再赘述。

步骤s104,查找脚本信息对应的对象服务器。与主服务器相连接的多个对象服务器可支持不同的脚本语言环境,又可称为环境服务器。每种语言脚本,脚本管理系统都可配置有相应的环境服务器,以便执行该语言脚本。

在一种实施方式中,可以根据脚本信息确定脚本语言;根据脚本语言查找可支持脚本语言的对象服务器。脚本语言可能不同,诸如php、python、java等,与主服务器通信连接有多个可支持不同语言环境的对象服务器,该脚本管理系统构成分布式管理系统,主服务器可按照语言环境而将脚本文件和配置文件分发给相应的对象服务器。这种方式,可以较好地将不同的脚本语言分发给支持该语言环境的对象服务器上单独存储及执行,使脚本管理更加方便可靠。

步骤s106,将脚本信息发送给查找到的对象服务器,以使查找到的对象服务器根据配置文件执行脚本文件。

本实施例的上述方法中,脚本管理系统包括主服务器,以及与主服务器通信连接的多个对象服务器,主服务器可以基于用户的录入数据生成脚本信息,并将脚本信息发送给与其对应的对象服务器执行该脚本文件。这种方式可以较好地简化了人工管理脚本的繁琐,提升了脚本管理效率,而且也有效提升了脚本管理的可靠性。

考虑到脚本信息由主服务器生成并进行管理,也存在脚本信息异常的情况,需要提示相关工作人员进行处理,上述方法还包括:如果脚本信息异常,向关联终端发送异常提示。其中,关联终端可以为工作人员的电脑、手机等智能设备。

在实际应用中,可以通过短信方式和/或邮件方式向关联终端发送异常报告单;异常报告单携带有异常位置和异常原因。具体的,可以判断脚本信息的异常等级,根据异常等级确定向管理终端发送异常提示的方式;异常提示的方式包括短信方式和/或邮件方式。当然,还可以包括其它方式,诸如通过语音方式提示工作人员注意。

通过上述方式,可以使工作人员清楚且及时地获知异常情况,从而及时采取措施解决问题,保证了脚本运行的可靠性。此外,本实施例提供的主服务器还可以对接收数据的频率进行监测,并生成与脚本信息有关的表单汇总等,便于工作人员清楚地了解脚本情况。

本实施例给出一种实际应用场景:随着web项目越来越多,通常会考虑非实时更新的数据异步同步。诸如,行情网站的业绩报告一般为一个季度才公开披露一次,无需每天前去获取最新数据,做法是将数据获取一次后写入缓存服务器(也即,上述主服务器,又可称后台服务器),每次用户访问时由缓存服务器提供数据信息,业绩报告虽然一个季度公开一次,但是具体公开日期有着很大的不确定性,这时就需缓存服务器定时去更新缓存数据,通常缓存数据繁多,诸如行情有几千股,更新量巨大,仅用一份同步脚本显然满足不了季报更新时的时效性,因此通常会分多个脚本去定时同步。以上为需要多个脚本的一种典型案例,其他项目一般也会用到缓存脚本定时去执行任务。应用本实施例提供的上述方法,主服务器可以直接基于用户录入数据生成脚本信息,并根据脚本信息的语言环境而将脚本信息转发给相应的对象服务器,从而较好地部署众多脚本信息。

考虑到数量众多的脚本信息分散部署在各个服务器,人工管理困难,比如技术人员频繁离职,交接不够细致全面,非常容易遗漏某些脚本的所在位置,新的技术人员因为找不到所需脚本信息,可能还需要重新开发,费时费力,效率低下。本发明实施例中的主服务器还可以存储有各脚本信息的目录,也即存储有各脚本信息的部署位置,以使相关工作人员可以方便快捷地通过该主服务器可以清楚地查询各脚本信息所在位置。

综上所述,本实施例提供的脚本管理方法,可以极大降低人力成本,改善了人工管理脚本的繁琐、效率低下且可靠性较差的问题,在新旧技术人员交接时,应用本实施例的脚本管理系统管理脚本,可以清楚掌握脚本信息的部署情况,使交接不会出现遗漏等问题,而且本实施例的脚本管理系统能够统一部署并管理脚本信息,技术人员无需自己部署,只需要将诸如程序代码等数据提交到该脚本管理系统即可,此外,技术人员可以根据脚本管理系统记录的脚本列表查看脚本信息,进而还可参考及复用相似的脚本,较好地减缓了重复工作,脚本管理系统在脚本信息出现故障时,可以及时通知到相关工作人员,便于工作人员维护,也进一步提升了脚本管理可靠性。

实施例二:

对于实施例一中所提供的脚本管理方法,本发明实施例提供了一种脚本管理装置,该装置应用于脚本管理系统,该脚本管理系统包括主服务器,以及与该主服务器通信连接的对象服务器;该装置设置于主服务器侧,参见图2所示的一种脚本管理装置的结构框图,包括:

脚本生成模块202,用于基于用户的录入数据生成脚本信息;脚本信息包括脚本文件和脚本文件对应的配置文件。

查找模块204,用于查找脚本信息对应的对象服务器。

在一种实施方式中,查找模块用于:根据脚本信息确定脚本语言;根据脚本语言查找可支持脚本语言的对象服务器。

脚本发送模块206,用于将脚本信息发送给对象服务器,以使对象服务器根据配置文件执行脚本文件。

本实施例的上述装置中,脚本管理系统包括主服务器,以及与主服务器通信连接的多个对象服务器,主服务器可以基于用户的录入数据生成脚本信息,并将脚本信息发送给与其对应的对象服务器执行该脚本文件。这种方式可以较好地简化了人工管理脚本的繁琐,提升了脚本管理效率,而且也有效提升了脚本管理的可靠性。

进一步,上述装置还可以包括:异常提示模块,用于如果脚本信息异常,向关联终端发送异常提示。

本实施例所提供的装置,其实现原理及产生的技术效果和前述实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。

实施例三:

对应于前述实施例所提供的方法和装置,参见图3所示的一种脚本管理系统的结构示意图,包括:主服务器100,以及与主服务器100通信连接的多个对象服务器200;主服务器上设置有实施例二提供的脚本管理装置。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统具体工作过程,可以参考前述实施例中的对应过程,在此不再赘述。

参见图4所示的一种服务器的结构示意图,具体包括处理器40,存储器41,总线42和通信接口43,处理器40、通信接口43和存储器41通过总线42连接;处理器40用于执行存储器41中存储的可执行模块,例如计算机程序。

其中,存储器41可能包含高速随机存取存储器(ram,randomaccessmemory),也可能还包括非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器。通过至少一个通信接口43(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。

总线42可以是isa总线、pci总线或eisa总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。

其中,存储器41用于存储程序,处理器40在接收到执行指令后,执行程序,前述本发明实施例任一实施例揭示的流过程定义的装置所执行的方法可以应用于处理器40中,或者由处理器40实现。

处理器40可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器40中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器40可以是通用处理器,包括中央处理器(centralprocessingunit,简称cpu)、网络处理器(networkprocessor,简称np)等;还可以是数字信号处理器(digitalsignalprocessing,简称dsp)、专用集成电路(applicationspecificintegratedcircuit,简称asic)、现成可编程门阵列(field-programmablegatearray,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器41,处理器40读取存储器41中的信息,结合其硬件完成上述方法的步骤。

本实施例提供的脚本管理系统中的主服务器和对象服务器,均可参照图4所示的服务器的结构示意图实现。

进一步,本实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序使处理器执行实施例一提供的方法。

本发明实施例所提供的脚本管理方法、装置及系统的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。

另外,在本发明实施例的描述中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1