CN110019059A - 一种定时同步的方法和装置 - Google Patents

一种定时同步的方法和装置 Download PDF

Info

Publication number
CN110019059A
CN110019059A CN201711261860.0A CN201711261860A CN110019059A CN 110019059 A CN110019059 A CN 110019059A CN 201711261860 A CN201711261860 A CN 201711261860A CN 110019059 A CN110019059 A CN 110019059A
Authority
CN
China
Prior art keywords
task
data
timing synchronization
synchronized
tables
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201711261860.0A
Other languages
English (en)
Other versions
CN110019059B (zh
Inventor
李卫超
徐淼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology Co Ltd
Original Assignee
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Jingdong Century Trading Co Ltd, Beijing Jingdong Shangke Information Technology Co Ltd filed Critical Beijing Jingdong Century Trading Co Ltd
Priority to CN201711261860.0A priority Critical patent/CN110019059B/zh
Publication of CN110019059A publication Critical patent/CN110019059A/zh
Application granted granted Critical
Publication of CN110019059B publication Critical patent/CN110019059B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/178Techniques for file synchronisation in file systems

Abstract

本发明公开了一种定时同步的方法和装置,涉及计算机技术领域。该方法的一具体实施方式包括:从数据库的数据表中加载任务信息到定时同步任务中,数据表中保存有多个定时同步任务的任务信息;从java类中实现与定时同步任务对应的任务接口,任务接口包括用于同步的方法;根据任务接口对数据进行同步。该实施方式降低了维护的工作量,减少了人力、时间成本的投入,提高了工作的销量。

Description

一种定时同步的方法和装置
技术领域
本发明涉及计算机技术领域,尤其涉及一种定时同步的方法和装置。
背景技术
在服务器间进行文件同步的应用场景中,往往会涉及到将特定一台发布服务器上的多个目录内的多个文件,在某一特定的时刻或每隔特定的时间段同步到若干台内容服务器上,以供外部应用系统进行访问。
数据镜像备份工具rsync(remote sync)是类unix系统下的备份软件,可以远程同步,也支持本地复制,或者与其他SSH、rsync主机同步。第一次同步时,rsync会复制全部内容,但在下一次同步时只传输修改过的文件,在传输数据的过程中可以实行压缩及解压缩操作,因此,可以使用更少的带宽,传输速度较快,同时还支持匿名传输,rsync不仅可以镜像保存整个目录树和文件系统,还可以保持原来文件的权限、时间、软硬链接,在数据处理领域已得到广泛应用。
目前,采用的同步方案主要有以下两种:
1、rsync+inotify的方案,是利用监控工具inotify,提供的监控文件系统事件机制,当监控到目录文件发生变化时,可以将相应的事件通知给rsync同步工具,以实现实时发现文件更改进而实时同步的目的。
2、在Linux系统中通过crontab命令设置定时同步任务,可以在固定的间隔时间执行指定的系统命令,来执行定时文件同步任务。
在实现本发明过程中,发明人发现现有技术中至少存在如下问题:
现有技术中需另外安装inotify软件,并进行相关配置,并保证rsync和inotify同时处于可用状态,增加了维护的成本和工作量;同样的,crontab命令的定时同步任务存在上百个级别,涉及到较多的参数配置,查找和维护时不方便,可维护性差。
因此,针对现有技术中的技术方案都存在易用性差和维护成本高的问题,亟需要提出一种可用性高、易于维护以及同步灵活的同步方案。
发明内容
有鉴于此,本发明实施例提供一种定时同步的方法和装置,能够解决现有技术中存在的易用性差和维护成本高的问题。
为实现上述目的,根据本发明实施例的一个方面,提供了一种定时同步的方法。
本发明实施例的一种定时同步的方法包括:从数据库的数据表中加载任务信息到定时同步任务中,数据表中保存有多个定时同步任务的任务信息;从java类中实现与定时同步任务对应的任务接口,任务接口包括用于同步的方法;根据任务接口对数据进行同步。
可选地,在本发明的实施方式中,在从数据库的数据表中加载任务信息到定时同步任务中的步骤之前,还包括:由用户对任务信息进行配置;根据配置更新数据表。
可选地,在本发明的实施方式中,任务信息包括任务ID、任务的执行时间以及任务要同步的路径,其中,在到达任务的执行时间时,基于任务要同步的路径,根据任务接口对数据进行同步。
可选地,在本发明的实施方式中,根据任务接口对数据进行同步的步骤包括:执行任务接口中的方法;从方法中调用shell script脚本;基于shell script脚本执行rsync命令对数据进行同步。
为实现上述目的,根据本发明实施例的另一方面,提供了一种定是同步的装置。
本发明实施例的一种定时同步的装置包括:加载模块,用于从数据库的数据表中加载任务信息到定时同步任务中,数据表中保存有多个定时同步任务的任务信息;处理模块,用于从java类中实现与定时同步任务对应的任务接口,任务接口包括用于同步的方法;同步模块,用于根据任务接口对数据进行同步。
可选地,在本发明的实施方式中,还包括更新模块,用于:由用户对任务信息进行配置;根据配置更新数据表。
可选地,在本发明的实施方式中,任务信息包括任务ID、任务的执行时间以及任务要同步的路径,其中,在到达任务的执行时间时,基于任务要同步的路径,根据任务接口对数据进行同步。
可选地,在本发明的实施方式中,同步模块还用于:执行任务接口中的方法;从方法中调用shell script脚本;基于shell script脚本执行rsync命令对数据进行同步。
为实现上述目的,根据本发明的再一方面,提供了一种电子设备。
本发明实施例的一种电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现本发明定时同步的方法。
为实现上述目的,根据本发明的再一方面,提供了一种计算机可读存储介质。
本发明实施例的一种计算机可读存储介质,其上存储有计算机程序,其特征在于,程序被处理器执行时实现本发明定时同步的方法。
上述发明中的一个实施例具有如下优点或有益效果:因为采用从java类中实现对应的任务接口,并通过任务接口实现对数据进行同步的技术手段,所以克服了现有技术中存在的易用性差和维护成本高的技术问题,进而达到灵活同步、提高易用性以及降低维护成本的技术效果。通过本发明的技术方案,在实现定时同步的同时,降低了维护的工作量,减少了人力、时间成本的投入,提高了工作的销量。
上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1是根据本发明实施例的定时同步的方法的主要流程的示意图;
图2是根据本发明实施例的定时同步的实现原理示意图;
图3是根据本发明实施例的定时同步的功能模块关系示意图;
图4是根据本发明实施例的定时同步的装置的主要模块的示意图;
图5是本发明实施例可以应用于其中的示例性系统架构图;
图6是适于用来实现本发明实施例的终端设备或服务器的计算机系统的结构示意图。
具体实施方式
以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
图1是根据本发明实施例的定时同步的方法的主要流程的示意图,如图1所示,本发明实施例的一种定时同步的方法主要包括如下步骤:
步骤S101:从数据库的数据表中加载任务信息到定时同步任务中,数据表中保存有多个定时同步任务的任务信息。每个定时同步任务在数据表中都对应一组任务信息,而该任务信息由用户进行配置,并根据配置更新数据表。
在本发明的实施例中,任务信息包括任务ID,任务的执行时间,任务要同步的路径。多组不同的任务信息加载到定时同步任务中组成了多个不同的定时同步任务,其中,在到达任务的执行时间时,基于任务要同步的路径,根据任务接口对数据进行同步。
步骤S102:从java类中实现与定时同步任务对应的任务接口,任务接口包括用于同步的方法。根据定时同步任务的属性,从java类中实现对应的任务接口,然后利用该任务接口中包含的同步方法进行同步。
需要说明的是,根据任务信息的内容,可以对所有的数据进行同步,也可以对部分数据进行同步,此外,同步的时间和频率都可以由用户进行设置。
步骤S103:根据任务接口对数据进行同步。利用任务接口中包含的同步方法进行同步。在本发明的实施例中,根据任务接口对数据进行同步的步骤包括:执行任务接口中的方法;从方法中调用shell script脚本;基于shell script脚本执行rsync命令对数据进行同步。其中,基于shell script脚本执行rsync命令是现有技术,于此不再赘述。
图2是根据本发明实施例的定时同步的实现原理示意图,如图2所示,在开始本发明的步骤之前,需要在内容服务器上安装数据镜像备份工具rsync应用软件,并建立认证文件以及rsync的相关参数配置文件,相关参数配置文件主要包括:
1、rsyncd.conf:主配置文件;
2、rsyncd.secrets:密码文件;
3、rsyncd.motd:服务器信息(用户登录信息)文件。
然后在发布服务器上部署j2EE Web应用服务器,用户便可以通过url地址访问web页面,进行定时同步任务的任务信息的配置。
还需要对本发明所涉及的名词以及功能模块做如下解释:
发布服务器:本申请部署的服务器,也是源文件服务器。
内容服务器:本申请进行文件同步的目标服务器,可以有多台服务器,文件同步后可提供给外部应用进行访问。
Linux:是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统,Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。
关系型数据库:是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。现实世界中的各种实体以及实体之间的各种联系均用关系模型来表示。关系模型由关系数据结构、关系操作集合、关系完整性约束三部分组成。
Shell Script:Shell脚本与Windows/Dos下的批处理相似,也就是用各类命令预先放入到一个文件中,方便一次性执行的一个程序文件,主要是方便管理员进行设置或者管理用的。但是它比Windows下的批处理更强大,比用其他编程程序编辑的程序效率更高,它使用了Linux/Unix下的命令,利用shell的功能所写的一个程序,这个程序是使用纯文本文件,将一些shell的语法与指令写在里面,然后用正规表示法,管道命令以及数据流重导向等功能,以达到我们所想要的处理目的。shell script更是提供了数组,循环,条件以及逻辑判断等重要功能,让使用者可以直接以shell来写程序,而不必使用类似C程序语言等传统程序编写的语法。
组件是能够完成某种功能并且向外提供若干个使用这个功能的接口的可重用的代码集。组个内部由多个类来协同实现指定的功能,同时组件对外暴露一个或多个接口,供外界调用。插件、框架等都属于组件的范畴。
开源项目quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,是一个完全由java编写的开源作业调度框架,它采用了基于多线程的架构,依赖一套松耦合的线程池管理部件来管理线程环境,能并发运行多个作业,具有可伸缩性,它可以单独使用,也可以与J2EE与J2SE应用程序相结合,用来创建运行十个,百个,甚至是好几万个Jobs这样复杂的程序,也以做成标准的Java组件。
同步任务设置模块:在quartz中进行任务设置,提供给用户可视化的Web页面设置定时同步任务的任务信息(也即任务执行参数);
同步任务更新模块:在quartz中进行任务更新,保存用户设置的任务信息,更新任务信息到对应的关系型数据库的数据表中;
同步任务创建模块:在quartz中进行任务创建,加载数据库的数据表中的任务信息,并创建quartz定时任务,准备定时执行;
同步任务执行模块:在quartz中进行任务执行,在任务的执行时刻,通过执行rsync同步命令,将发布服务器指定目录文件同步到内容服务器的指定目录中,完成文件同步工作,等待下次定时任务执行。
本发明主要由quartz和rsync两个组件构成,中间使用Mysql数据库来完成任务配置以达到数据的持久化存储。
下面对本发明实施例的实现方案进行详细的阐述:
quartz组件涉及的具体过程如下:
任务设置过程:发布服务器上Web应用提供可视化页面,以进行任务信息配置,主要包括任务具体执行时间,以及要从发布服务器同步到内容服务器上的目录或文件路径;
任务更新过程:用户配置完毕后,将任务信息保存到关系型数据库的数据表中。主要保存的字段有:任务ID,任务的执行时间,任务要同步的目录路径,任务的创建时间,任务的更新时间,任务的创建人等信息参数。当然,也可以对特定任务的执行时间,同步目录的路径做修改,修改后更新数据库对应的字段即可。
任务创建过程:上述多个信息参数组成一组任务信息,一组任务信息创建一个定时同步任务,每个定时同步任务在quartz中都对应一个定时任务工具scheduling job,在任务创建或更新的过程中,需要重新加载scheduling job。
任务执行过程:scheduling job实现自定义任务逻辑的方法,从java类中实现与定时同步任务对应的任务接口,任务接口包括用于同步的方法,该方法如下:
public void execute(JobExecutionContext context)throwsJobExecutionException;
具体的,是在execute()方法的业务逻辑中实现同步文件的功能,通过java代码实现调用shell命令来执行shell script脚本,具体执行shell script脚本的方法如下(主要是利用Runtime.getRuntime()提供的exec()方法):
在单独的进程中执行字符串命令:Process exec(String command);
JVM启动一个Process,调用Process类提供的如下方法来判断调用操作是否正确执行:
abstract int waitFor();
在调用shell脚本时,通过Process类提供的如下方法来获取返回值:
abstract InputStream getInputStream()
rsync组件涉及的具体过程如下:
把rsync同步目录的命令(例如rsync[OPTION]...SRC[SRC]...[USER@]HOST::DEST)写入到shell script脚本中。
具体的,当定时同步任务触发,执行java代码中的方法,调用shell script脚本(因为事先将同步目录的命令写入到shell script脚本中,因此等同于执行了rsync同步命令),内容服务器上的rsync守护进程收到发布服务器同步命令,便开始进行两个服务器之间文件同步处理。
需要说明的是,本发明通过配置任务信息,实现了定时同步任务的初始化或更新,并将任务信息保存到关系数据库的数据表中,供应用服务器重启时定时任务的加载,保证设置的任务信息的参数数据不丢失;同时为前端web页面展示定时同步任务的详情进行数据支持。
图3是根据本发明实施例的定时同步的功能模块关系示意图,如图3所示,描述了各模块之间的组件关系,同步任务设置模块传递任务信息的参数给同步任务更新模块,数据更新完后会启动同步任务创建模块新建或更新定时同步任务,任务更新实时生效,当到达任务执行时间后,触发同步任务执行模块执行文件同步并更新任务执行状态。
需要说明的是,本发明通过将rsync和quartz二者的特性相结合,使用者不必登陆到服务器上配置定时任务,就能将发布服务器上的目录文件定时的同步到多台内容服务器上,实现了文件的定时同步,降低了人力成本和时间成本。
根据本发明实施例的定时同步的方法可以看出,因为采用从java类中实现对应的任务接口,并通过任务接口实现对数据进行同步的技术手段,所以克服了现有技术中存在的易用性差和维护成本高的技术问题,进而达到灵活同步、提高易用性以及降低维护成本的技术效果。通过本发明的技术方案,在实现定时同步的同时,降低了维护的工作量,减少了人力、时间成本的投入,提高了工作的销量。
图4是根据本发明实施例的定时同步的装置的主要模块的示意图,如图4所示,本发明实施例的定时同步的装置400主要包括:加载模块401、处理模块402以及同步模块403,其中:
加载模块401,用于从数据库的数据表中加载任务信息到定时同步任务中,数据表中保存有多个定时同步任务的任务信息;处理模块402,用于从java类中实现与定时同步任务对应的任务接口,任务接口包括用于同步的方法;同步模块403,用于根据任务接口对数据进行同步。进而克服了现有技术中存在的易用性差和维护成本高的技术问题。
在本发明的实施方式中,还包括更新模块(图中未示出),用于:由用户对任务信息进行配置;根据配置更新数据表。
本发明中的任务信息包括任务ID、任务的执行时间以及任务要同步的路径。
此外,本发明的实施方式中的同步模块还用于:执行任务接口中的方法;从方法中调用shell script脚本;基于shell script脚本执行rsync命令对数据进行同步。
从以上描述可以看出,因为采用从java类中实现对应的任务接口,并通过任务接口实现对数据进行同步的技术手段,所以克服了现有技术中存在的易用性差和维护成本高的技术问题,进而达到灵活同步、提高易用性以及降低维护成本的技术效果。通过本发明的技术方案,在实现定时同步的同时,降低了维护的工作量,减少了人力、时间成本的投入,提高了工作的销量。
图5示出了可以应用本发明实施例的定时同步方法或定时同步装置的示例性系统架构500。
如图5所示,系统架构500可以包括终端设备501、502、503,网络504和服务器505。网络504用以在终端设备501、502、503和服务器505之间提供通信链路的介质。网络504可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备501、502、503通过网络504与服务器505交互,以接收或发送消息等。终端设备501、502、503上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等(仅为示例)。
终端设备501、502、503可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器505可以是提供各种服务的服务器,例如对用户利用终端设备501、502、503所浏览的购物类网站提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的产品信息查询请求等数据进行分析等处理,并将处理结果(例如目标推送信息、产品信息--仅为示例)反馈给终端设备。
需要说明的是,本发明实施例所提供的定时同步方法一般由服务器505执行,相应地,定时同步装置一般设置于服务器505中。
应该理解,图5中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
下面参考图6,其示出了适于用来实现本发明实施例的终端设备的计算机系统600的结构示意图。图6示出的终端设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图6所示,计算机系统600包括中央处理单元(CPU)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储部分608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有系统600操作所需的各种程序和数据。CPU 601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
以下部件连接至I/O接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至I/O接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。
特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。在该计算机程序被中央处理单元(CPU)601执行时,执行本发明的系统中限定的上述功能。
需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本发明实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括加载模块、处理模块以及同步模块。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定。
作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括:从数据库的数据表中加载任务信息到定时同步任务中,数据表中保存有多个定时同步任务的任务信息;从java类中实现与定时同步任务对应的任务接口,任务接口包括用于同步的方法;根据任务接口对数据进行同步。
根据本发明实施例的技术方案,因为采用从java类中实现对应的任务接口,并通过任务接口实现对数据进行同步的技术手段,所以克服了现有技术中存在的易用性差和维护成本高的技术问题,进而达到灵活同步、提高易用性以及降低维护成本的技术效果。通过本发明的技术方案,在实现定时同步的同时,降低了维护的工作量,减少了人力、时间成本的投入,提高了工作的销量。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。

Claims (10)

1.一种定时同步的方法,其特征在于,包括:
从数据库的数据表中加载任务信息到定时同步任务中,所述数据表中保存有多个定时同步任务的任务信息;
从java类中实现与所述定时同步任务对应的任务接口,所述任务接口包括用于同步的方法;
根据所述任务接口对数据进行同步。
2.根据权利要求1所述的方法,其特征在于,在从数据库的数据表中加载任务信息到定时同步任务中的步骤之前,还包括:
由用户对所述任务信息进行配置;
根据所述配置更新所述数据表。
3.根据权利要求1或2所述的方法,其特征在于,所述任务信息包括任务ID、任务的执行时间以及任务要同步的路径,其中,在到达所述任务的执行时间时,基于所述任务要同步的路径,根据所述任务接口对数据进行同步。
4.根据权利要求1所述的方法,其特征在于,所述根据所述任务接口对数据进行同步的步骤包括:
执行所述任务接口中的方法;
从所述方法中调用shell script脚本;
基于所述shell script脚本执行rsync命令对数据进行同步。
5.一种定时同步的装置,其特征在于,包括:
加载模块,用于从数据库的数据表中加载任务信息到定时同步任务中,所述数据表中保存有多个定时同步任务的任务信息;
处理模块,用于从java类中实现与所述定时同步任务对应的任务接口,所述任务接口包括用于同步的方法;
同步模块,用于根据所述任务接口对数据进行同步。
6.根据权利要求5所述的装置,其特征在于,还包括更新模块,用于:
由用户对所述任务信息进行配置;
根据所述配置更新所述数据表。
7.根据权利要求5或6所述的装置,其特征在于,所述任务信息包括任务ID、任务的执行时间以及任务要同步的路径,其中,在到达所述任务的执行时间时,基于所述任务要同步的路径,根据所述任务接口对数据进行同步。
8.根据权利要求5所述的装置,其特征在于,所述同步模块还用于:
执行所述任务接口中的方法;
从所述方法中调用shell script脚本;
基于所述shell script脚本执行rsync命令对数据进行同步。
9.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-4中任一所述的方法。
10.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-4中任一所述的方法。
CN201711261860.0A 2017-12-04 2017-12-04 一种定时同步的方法和装置 Active CN110019059B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711261860.0A CN110019059B (zh) 2017-12-04 2017-12-04 一种定时同步的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711261860.0A CN110019059B (zh) 2017-12-04 2017-12-04 一种定时同步的方法和装置

Publications (2)

Publication Number Publication Date
CN110019059A true CN110019059A (zh) 2019-07-16
CN110019059B CN110019059B (zh) 2022-04-12

Family

ID=67186557

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711261860.0A Active CN110019059B (zh) 2017-12-04 2017-12-04 一种定时同步的方法和装置

Country Status (1)

Country Link
CN (1) CN110019059B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110673943A (zh) * 2019-09-29 2020-01-10 香港乐蜜有限公司 一种定时任务的实现方法、装置、电子设备及存储介质
CN115348272A (zh) * 2022-08-15 2022-11-15 四川虹美智能科技有限公司 服务器产出物的自动化同步方法及装置

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6145008A (en) * 1994-09-13 2000-11-07 Kopetz; Hermann Conflict free time-triggered method and apparatus for the transmission of messages in a distributed real-time computer system
US6952819B1 (en) * 2000-01-13 2005-10-04 Obic Business Consultant Co., Ltd. Basic-administrative-tasks software program and a method of selling same
CN101566957A (zh) * 2008-04-25 2009-10-28 恩益禧电子股份有限公司 信息处理系统及任务执行控制方法
CN101604259A (zh) * 2009-06-10 2009-12-16 深圳市共进电子有限公司 一种基于嵌入式系统的多进程同步调度的方法
US20090319608A1 (en) * 2008-06-23 2009-12-24 Microsoft Corporation Automated task centered collaboration
CN101887381A (zh) * 2010-06-22 2010-11-17 北京伟库电子商务科技有限公司 基于Quartz框架的配置定时任务的方法和装置
CN104092591A (zh) * 2014-08-04 2014-10-08 飞狐信息技术(天津)有限公司 一种任务监控方法及系统
CN104536819A (zh) * 2014-12-29 2015-04-22 同程网络科技股份有限公司 基于web服务的任务调度方法
CN104702426A (zh) * 2013-12-05 2015-06-10 广东优迈信息通信股份有限公司 一种定时调度服务系统的配置方法及装置
CN104731956A (zh) * 2015-04-02 2015-06-24 北京奇虎科技有限公司 同步数据的方法、系统及相关数据库
CN105404949A (zh) * 2014-09-12 2016-03-16 株洲南车时代电气股份有限公司 一种自定义流程的系统及其方法
CN106406993A (zh) * 2016-09-06 2017-02-15 努比亚技术有限公司 一种定时任务管理方法和系统
CN107193541A (zh) * 2016-03-15 2017-09-22 广州市动景计算机科技有限公司 任务执行进度的显示方法及装置

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6145008A (en) * 1994-09-13 2000-11-07 Kopetz; Hermann Conflict free time-triggered method and apparatus for the transmission of messages in a distributed real-time computer system
US6952819B1 (en) * 2000-01-13 2005-10-04 Obic Business Consultant Co., Ltd. Basic-administrative-tasks software program and a method of selling same
CN101566957A (zh) * 2008-04-25 2009-10-28 恩益禧电子股份有限公司 信息处理系统及任务执行控制方法
US20090319608A1 (en) * 2008-06-23 2009-12-24 Microsoft Corporation Automated task centered collaboration
CN101604259A (zh) * 2009-06-10 2009-12-16 深圳市共进电子有限公司 一种基于嵌入式系统的多进程同步调度的方法
CN101887381A (zh) * 2010-06-22 2010-11-17 北京伟库电子商务科技有限公司 基于Quartz框架的配置定时任务的方法和装置
CN104702426A (zh) * 2013-12-05 2015-06-10 广东优迈信息通信股份有限公司 一种定时调度服务系统的配置方法及装置
CN104092591A (zh) * 2014-08-04 2014-10-08 飞狐信息技术(天津)有限公司 一种任务监控方法及系统
CN105404949A (zh) * 2014-09-12 2016-03-16 株洲南车时代电气股份有限公司 一种自定义流程的系统及其方法
CN104536819A (zh) * 2014-12-29 2015-04-22 同程网络科技股份有限公司 基于web服务的任务调度方法
CN104731956A (zh) * 2015-04-02 2015-06-24 北京奇虎科技有限公司 同步数据的方法、系统及相关数据库
CN107193541A (zh) * 2016-03-15 2017-09-22 广州市动景计算机科技有限公司 任务执行进度的显示方法及装置
CN106406993A (zh) * 2016-09-06 2017-02-15 努比亚技术有限公司 一种定时任务管理方法和系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
GOGYM: "spring boot下定时任务quartz的集群使用", 《HTTPS://BLOG.CSDN.NET/KOKJUIS/ARTICLE/DETAILS/78526709》 *
汪洋: "Linux集群数据生成及管理工具中任务管理模块的设计与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110673943A (zh) * 2019-09-29 2020-01-10 香港乐蜜有限公司 一种定时任务的实现方法、装置、电子设备及存储介质
CN115348272A (zh) * 2022-08-15 2022-11-15 四川虹美智能科技有限公司 服务器产出物的自动化同步方法及装置

Also Published As

Publication number Publication date
CN110019059B (zh) 2022-04-12

Similar Documents

Publication Publication Date Title
CN111506412B (zh) 基于Airflow的分布式异步任务构建、调度系统及方法
CN111930521A (zh) 用于部署应用的方法、装置、电子设备及可读存储介质
CN109413127A (zh) 一种数据同步方法和装置
CN109726094A (zh) 压力测试的方法和装置
CN109241033A (zh) 创建实时数据仓库的方法和装置
CN109905286A (zh) 一种监控设备运行状态的方法和系统
CN110262807A (zh) 集群创建进度日志采集系统、方法和装置
CN110096424A (zh) 测试的处理方法、装置、电子设备及存储介质
CN107506218A (zh) 一种配置文件的管理方法及管理系统
CN104580532A (zh) 一种跨平台应用系统
WO2024077885A1 (zh) 容器集群的管理方法、装置、设备及非易失性可读存储介质
CN109032796A (zh) 一种数据处理方法和装置
CN109144785A (zh) 用于备份数据的方法和装置
CN108984544A (zh) 一种分布式系统修改配置信息的方法和装置
CN110166507A (zh) 多资源调度方法和装置
CN110019346A (zh) 一种基于双主数据库的数据处理方法和装置
CN108932157A (zh) 分布式处理任务的方法、系统、电子设备和可读介质
CN110334145A (zh) 数据处理的方法和装置
CN110019158A (zh) 一种监控数据质量的方法和装置
CN110019539A (zh) 一种数据仓库的数据同步的方法和装置
CN110019059A (zh) 一种定时同步的方法和装置
CN113128197A (zh) 应用投产版本管理的方法和装置
CN109725913A (zh) 数据更新的方法和装置
CN110795328A (zh) 一种接口测试方法和装置
CN113504939B (zh) 项目版本发布的管理方法、装置、电子设备及计算机可读介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant