CN110515714A - 一种基于集群系统的任务均衡调度方法 - Google Patents

一种基于集群系统的任务均衡调度方法 Download PDF

Info

Publication number
CN110515714A
CN110515714A CN201910753685.XA CN201910753685A CN110515714A CN 110515714 A CN110515714 A CN 110515714A CN 201910753685 A CN201910753685 A CN 201910753685A CN 110515714 A CN110515714 A CN 110515714A
Authority
CN
China
Prior art keywords
record
permission
key
machine
expired
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.)
Pending
Application number
CN201910753685.XA
Other languages
English (en)
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.)
Zhejiang Wanpeng Education Technology Co Ltd
Original Assignee
Zhejiang Wanpeng Education 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 Zhejiang Wanpeng Education Technology Co Ltd filed Critical Zhejiang Wanpeng Education Technology Co Ltd
Priority to CN201910753685.XA priority Critical patent/CN110515714A/zh
Publication of CN110515714A publication Critical patent/CN110515714A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种基于集群系统的任务均衡调度方法。本发明具体实现包括:每次服务器获取需要执行的记录后,先去获取相关的执行权限,如果获取到了执行权限,就继续执行。如果发现执行权限已经被别的服务器获取,就自动放弃本次操作。进行下一条记录的权限获取。同时定期清理过期权限,定时将挂起的权限释放,保证记录执行的完整性。本发明具备了前两种方式的优点,同时改善了它们的缺点,具有部署方便,扩展方便的特点,同时充分利用了现有的服务器资源,均衡分配。非常适合集群部署,集群扩展的过程非常简单。

Description

一种基于集群系统的任务均衡调度方法
技术领域
本发明属于计算机分布式领域,涉及一种基于集群系统的任务均衡调度方法。
背景技术
在大型的网络服务系统中,为了减轻服务器的压力、优化服务器资源的使用和提高客户端的响应速度。一般的解决方案是将服务器集群。当服务器集群后,所有的服务器将可以执行相同的操作,但是部分操作可能是单例的,同一时间内只能一台服务执行。为了达到这种目的可以有两种方式:
第一种方式是在集群中的各个服务器中做相应的参数标志,服务器每次操作执行前去查询下是否是被标志的服务器,如果是被标记的服务器代表本服务器有权限操作,正常去执行。如果发现未被标记代表相应操作无权限,自动退出。
第二种方式和第一种方式相似,是将标志位放到一个公共的、所有机器都可以读取的区域,通过绑定ip位置或者服务器名称等方式来实现,服务器每次操作执行前去公共区域查询下被标志的服务器信息是否是本机,如果是被标记的服务器是本机代表本服务器有权限操作,正常去执行。如果发现标记服务器非本机,代表相应操作无权限,自动退出。
以上两种方式都存在明显缺陷或者适用度等问题,两种方式都是绑定死了某台机器执行某一类操作,颗粒度较大。无法实现某台机器执行某一类操作中的某一条数据。同时因为指定了特定的机器去执行某类操作,造成部分机器在未改配置前是无权限执行,造成机器资源的浪费。而且第一种方式部署复杂,需要每台机器配置。第二种方式集群中虽然只需要配置一次,但是存在配置的机器撤销后需要修改配置等问题。
发明内容
本发明的目的就是针对现有技术的不足,主要解决了几个方面的问题,其一能够服务集群部署方便;其二充分利用服务器资源,非常适合集群部署使用。
本发明解决其技术问题所采用的技术方案包括如下具体步骤:
步骤(1)、定义一类数据执行key值、定义过期时间同时获取本机在局域网内唯一的ip。以一条需要转换的视频记录作为例,转换中key值规则为固定值+”_”+单条业务数据Id。固定值为conver_video_knowledge_of_list,单条业务数据id为01,相应key值为conver_video_knowledge_of_list_01,定义过期时间为60分钟,过期时间根据不同的业务可以配置不同的时间。本例中因为是视频文件转换,需要花费比较长的时间,故设置时间稍长60分钟。ip为192.168.0.22。
步骤(2)、获取相关的存储连接,将相应的信息记录插入到存储介质中。记录信息包含了key、ip、过期时间。存储介质可以是数据库或者缓存等有原子性的操作的介质。本样例中用的是redis缓存,调用redis中命令rpush(String key,String...strings),将相应的记录放入redis。如果是数据库中,直接将相关记录插入数据库表中。key为conver_video_knowledge_of_list_01,ip为192.168.0.22。
步骤(3)、通过相关的key获取第一条存储的记录,然后进行比对ip进行匹配是否是本机获取执行权限。假设根据key值获取的第一个ip值为192.168.0.22,代表的第一个申请权限的是本机。本机获取本条数据执行权限,可以对本条记录进行相关操作。假设取到的第一个ip为192.168.10.110,代表第一个申请的权限的机器非本机,本条记录执行权限获取失败,自动结束相关炒作,进行下一条记录的权限申请。在reidis中调用lindex(key,0)方法,在数据库中排序后取第一条。
步骤(4)、为获取执行权限的记录锁定过期时间,锁定过期时间是防止相应的记录执行过程中,万一有断电等不可抗拒因数造成的服务器死机,关机等造成的记录被锁定而本机已经无法执行被一直挂起。在redis中调用expire(key,exitTime)方法。在数据库中可以添加过期记录。
步骤(5)、定时或者下钩子程序清理权限过期的记录。在本次操作结束后,对本次操作的记录进行清理。或者是到过期时间后,将本次操作的记录清理,将权限释放。进行下一次权限的分配。
本发明有益效果如下:
本发明具备了部署简单、扩展简单、充分利用服务器资源等特点,能够无缝集群,同时资源分配较为均衡,非常适合在大并发,高集群的服务器环境。同时每条记录的权限都有过期时间和自动清理,保证了数据执行的完整性。是一种非常便捷的权限分配技术方法,应用场景比较广泛。
具体实施方式
本发明的基于存储介质的服务权限均衡分配的方法,总体思路大致包括:每次服务器获取需要执行的记录后,先去获取相关的执行权限,如果获取到了执行权限,就继续执行。如果发现执行权限已经被别的服务器获取,就自动放弃本次操作。进行下一条记录的权限获取。同时定期清理过期权限,定时将挂起的权限释放,保证记录执行的完整性。本发明具备了前两种方式的优点,同时改善了它们的缺点,具有部署方便,扩展方便的特点,同时充分利用了现有的服务器资源,均衡分配。非常适合集群部署,集群扩展的过程非常简单。
具体步骤如下:
步骤(1)、定义一类数据执行key值、定义过期时间同时获取本机在局域网内唯一的ip。以一条需要转换的视频记录作为例,转换中key值规则为固定值+”_”+单条业务数据Id。固定值为conver_video_knowledge_of_list,单条业务数据id为01.相应key值为conver_video_knowledge_of_list_01,定义过期时间为60分钟,过期时间根据不同的业务可以配置不同的时间。本例中因为是视频文件转换,需要花费比较长的时间,故设置时间稍长60分钟。ip为192.168.0.22。
步骤(2)、获取相关的存储连接,将相应的信息记录插入到存储介质中。记录信息包含了key、ip、过期时间。存储介质可以为数据库或者缓存等有原子性的操作的介质。本样例中用的是redis缓存,调用redis中命令rpush(String key,String...strings),将相应的记录放入redis。如果是数据库中,直接将相关记录插入数据库表中。key为conver_video_knowledge_of_list_01,ip为192.168.0.22。
步骤(3)、通过相关的key获取第一条存储的记录,然后进行比对ip进行匹配是否是本机获取执行权限。假设根据key值获取的第一个ip值为192.168.0.22,代表的第一个申请权限的是本机。本机获取本条数据执行权限,可以对本条记录进行相关操作。假设取到的第一个ip为192.168.10.110,代表第一个申请的权限的机器非本机,本条记录执行权限获取失败,自动结束相关操作,进行下一条记录的权限申请。在reidis中调用lindex(key,0)方法,在数据库中排序后取第一条。
步骤(4)、为获取执行权限的记录锁定过期时间,锁定过期时间是防止相应的记录执行过程中,万一有断电等不可抗拒因数造成的服务器死机,关机等造成的记录被锁定而本机已经无法执行被一直过起。在redis中调用expire(key,exitTime)方法。在数据库中可以添加过期记录
步骤(5)、定时或者下钩子程序清理权限过期的记录。在本次操作结束后,对本次操作的记录进行清理。或者是到过期时间后,将本次操作的记录清理,将权限释放。进行下一次权限的分配。

Claims (1)

1.一种基于集群系统的任务均衡调度方法,其特征在于包括如下步骤:
步骤(1)、定义一类数据执行key值、定义过期时间同时获取本机在局域网内唯一的ip;数据转换中key值规则为固定值+”_”+单条业务数据Id;固定值为conver_video_knowledge_of_list,单条业务数据id为01,相应key值为conver_video_knowledge_of_list_01,定义过期时间为T分钟,过期时间根据不同的业务配置不同的时间;设ip为192.168.0.22;
步骤(2)、获取相关的存储连接,将相应的记录信息插入到存储介质中;记录信息包含了key、ip、过期时间;存储介质包括数据库或者缓存;缓存包括redis缓存;调用redis缓存中命令rpush(String key,String...strings),将相应的记录信息放入redis;如果是数据库中,则直接将相关记录信息插入数据库表中;key为conver_video_knowledge_of_list_01,ip为192.168.0.22;
步骤(3)、通过相关的key获取第一条存储的记录,然后进行比对ip进行匹配是否是本机获取执行权限;假设根据key值获取的第一个ip值为192.168.0.22,代表的第一个申请权限的是本机;本机获取本条数据执行权限,可以对本条记录进行相关操作;假设取到的第一个ip为192.168.10.110,代表第一个申请的权限的机器非本机,本条记录执行权限获取失败,自动结束相关操作,进行下一条记录的权限申请;在reidis缓存中调用lindex(key,0)方法,在数据库中排序后取第一条;
步骤(4)、为获取执行权限的记录锁定过期时间,锁定过期时间是防止相应的记录执行过程中,因不可抗拒因素造成的服务器死机、关机造成的记录被锁定而本机已经无法执行被一直挂起;在redis中调用expire(key,exitTime)方法;在数据库中可以添加过期记录;
步骤(5)、定时或者下钩子程序清理权限过期的记录;在本次操作结束后,对本次操作的记录进行清理;或者是到过期时间后,将本次操作的记录清理,将权限释放;进行下一次权限的分配。
CN201910753685.XA 2019-08-15 2019-08-15 一种基于集群系统的任务均衡调度方法 Pending CN110515714A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910753685.XA CN110515714A (zh) 2019-08-15 2019-08-15 一种基于集群系统的任务均衡调度方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910753685.XA CN110515714A (zh) 2019-08-15 2019-08-15 一种基于集群系统的任务均衡调度方法

Publications (1)

Publication Number Publication Date
CN110515714A true CN110515714A (zh) 2019-11-29

Family

ID=68626017

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910753685.XA Pending CN110515714A (zh) 2019-08-15 2019-08-15 一种基于集群系统的任务均衡调度方法

Country Status (1)

Country Link
CN (1) CN110515714A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111813528A (zh) * 2020-07-17 2020-10-23 公安部第三研究所 一种基于任务统计特性的视频大数据标准化汇聚网关系统及方法
CN113760432A (zh) * 2021-08-30 2021-12-07 浙江万朋教育科技股份有限公司 一种基于H5 Canvas实现还原手写笔迹的涂鸦方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101408852A (zh) * 2008-11-26 2009-04-15 阿里巴巴集团控股有限公司 一种调度任务的方法、装置和系统
CN104935658A (zh) * 2015-06-17 2015-09-23 交通银行股份有限公司 一种银行任务分配方法及装置
CN105608115A (zh) * 2015-12-11 2016-05-25 北京奇虎科技有限公司 数据获取方法与装置
US20180278584A1 (en) * 2017-03-27 2018-09-27 Zenedge, Inc. Authenticating Access Configuration for Application Programming Interfaces
CN108710541A (zh) * 2018-05-22 2018-10-26 泰康保险集团股份有限公司 一种定时任务的执行方法及装置
CN109800136A (zh) * 2018-12-06 2019-05-24 珠海西山居移动游戏科技有限公司 一种远程redis性能数据采样方法及其系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101408852A (zh) * 2008-11-26 2009-04-15 阿里巴巴集团控股有限公司 一种调度任务的方法、装置和系统
CN104935658A (zh) * 2015-06-17 2015-09-23 交通银行股份有限公司 一种银行任务分配方法及装置
CN105608115A (zh) * 2015-12-11 2016-05-25 北京奇虎科技有限公司 数据获取方法与装置
US20180278584A1 (en) * 2017-03-27 2018-09-27 Zenedge, Inc. Authenticating Access Configuration for Application Programming Interfaces
CN108710541A (zh) * 2018-05-22 2018-10-26 泰康保险集团股份有限公司 一种定时任务的执行方法及装置
CN109800136A (zh) * 2018-12-06 2019-05-24 珠海西山居移动游戏科技有限公司 一种远程redis性能数据采样方法及其系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
HRBUST_09ZHANGYABIN: "redis过期key的清理策略", 《HTTPS://WWW.CNBLOGS.COM/ZHANGYABIN---ACM/P/9016065.HTML》 *
李健同学: "Java通过redis管理你的集群定时任务", 《HTTPS://WWW.JIANSHU.COM/P/48C5B11B80CD》 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111813528A (zh) * 2020-07-17 2020-10-23 公安部第三研究所 一种基于任务统计特性的视频大数据标准化汇聚网关系统及方法
CN111813528B (zh) * 2020-07-17 2023-04-18 公安部第三研究所 一种基于任务统计特性的视频大数据标准化汇聚网关系统及方法
CN113760432A (zh) * 2021-08-30 2021-12-07 浙江万朋教育科技股份有限公司 一种基于H5 Canvas实现还原手写笔迹的涂鸦方法

Similar Documents

Publication Publication Date Title
CN107766129B (zh) 一种任务处理方法、装置及系统
Zhou et al. Delta debugging microservice systems
US20190052528A1 (en) Network function virtualization management orchestration apparatus, method
US7730183B2 (en) System and method for generating virtual networks
US10338958B1 (en) Stream adapter for batch-oriented processing frameworks
CN112214338A (zh) 一种基于微服务灵活部署的物联网云平台
WO2019037203A1 (zh) 应用程序的性能测试方法、装置、计算机设备和存储介质
CN110661647A (zh) 一种生命周期管理方法及装置
CN106033373A (zh) 一种云计算平台中虚拟机资源调度方法和调度系统
CN105786603B (zh) 一种基于分布式的高并发业务处理系统及方法
CN107659450B (zh) 大数据集群资源的分配方法、分配装置及存储介质
US20200167444A1 (en) Systems and methods for software license management
CN110515714A (zh) 一种基于集群系统的任务均衡调度方法
CN104572306A (zh) 计算机集群的资源管理方法、资源管理器
WO2022134358A1 (zh) 微服务数据的处理方法、装置、微服务处理平台及介质
CN113742033A (zh) 一种kubernetes集群联邦系统及其实现方法
Vázquez et al. Federation of TeraGrid, EGEE and OSG infrastructures through a metascheduler
CN105404573A (zh) 一种SmartRack多节点部署系统压力测试方法
Tang et al. Application centric lifecycle framework in cloud
CN111181929A (zh) 基于共享虚拟机文件的异构混合云架构及管理方法
CN115495265A (zh) 一种基于hadoop提高kafka消费能力的方法
US11366648B2 (en) Compiling monoglot function compositions into a single entity
CN103617077A (zh) 智能型云端化移转的方法与系统
CN113553264A (zh) 测试数据生成方法、装置、电子设备及介质
CN112328300A (zh) 一种基于批量操控工具的it自动化运维系统

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20191129