【技术实现步骤摘要】
一种多任务防重处理方法、装置及存储介质
本专利技术涉及计算机网络应用领域,更具体的说涉及一种多任务防重处理方法、装置及存储介质。
技术介绍
随着社会和科技的进步,基于Web框架的所开发的系统在很多业务场景下都需要面临同一时间点大量用户同时进行任务执行的问题。上述问题在C/S构架中可以通过长事务来实现,但Web应用是基于Internet网络环境的,其中的并发控制有其内在的特殊性:1.Web所基于的网络协议HTTP是一种无连接的协议,数据库服务器无法保存事务的状态信息;2.用户可以随时中止或启动浏览器中当前主页上的事务。由于上述特殊性,Web应用中并发控制不能采用严格的长事务来实现,因此存在当多个客户端可能读取同一笔数据或同时更新一笔数据的情况时,同一个数据被修改而造成的混乱的问题。
技术实现思路
本专利技术所要解决的技术问题是如何防止在Web应用中防止多个客户端同时访问同一笔数据,多任务对数据数进行操作引起的数据混乱问题。为了解决以上问题本专利技术提供了一种多任务防重处理方法
【技术保护点】
1.一种多任务防重处理方法,其特征在于:/n步骤1.1设计任务模板集,根据日常任务需求的类型,设计任务模板集,每个任务模板与一类日常任务需求相对应;/n步骤1.2通过客户端Web界面向用户推送任务模板集供用户选择;/n步骤1.3客户端Web界面根据用户选择的任务模板集和用户输入的参数生成任务请求向服务器发起请求;/n步骤1.4服务器上设有系统运行监控模块,监控多任务请求运行状态,并根据多任务请求调整系统运行状态,并将接收到的任务请求根据提交的时间先后顺序放入系统的消息队列中;/n步骤1.5服务器执行消息队列中对应的任务,在数据读取的时候把相应的数据锁定,在更新阶段把锁放开, ...
【技术特征摘要】
1.一种多任务防重处理方法,其特征在于:
步骤1.1设计任务模板集,根据日常任务需求的类型,设计任务模板集,每个任务模板与一类日常任务需求相对应;
步骤1.2通过客户端Web界面向用户推送任务模板集供用户选择;
步骤1.3客户端Web界面根据用户选择的任务模板集和用户输入的参数生成任务请求向服务器发起请求;
步骤1.4服务器上设有系统运行监控模块,监控多任务请求运行状态,并根据多任务请求调整系统运行状态,并将接收到的任务请求根据提交的时间先后顺序放入系统的消息队列中;
步骤1.5服务器执行消息队列中对应的任务,在数据读取的时候把相应的数据锁定,在更新阶段把锁放开,然后更新数据,获取执行结果并释放对应任务所占用的服务器资源。
2.根据权利要求1所述的多任务防重处理方法,其特征在于浏览器Web界面向用户推送任务模板集前,先向用户推送身份认证要求,要求用户先通过身份认证。
3.根据权利要求1所述的多任务防重处理方法,其特征在于服务器实现同时接收多个远程连接的客户端Web界面同时发送的任务请求。
4.根据权利要求1所述的多任务防重处理方法,其特征在于客户端Web界面通过URL请求的方式由服务器向用户端推送。
5.根据权利要求1所述的多任务防重处理方法,其特征在于服务器接收到新任务请求,先检查当前消息队列信息,当消息队列可容纳消息数量大于或等于任务数量时,维持消息队列可容纳消息的数量,将获取的多个任务按任务发起的时间先后顺序放入消息队列中。
6.根据权利要求1所述的多任务防重处理方法,其特征在于系统运行监控模块监测系统运行过程中,线程或进程池中的对应的线程或进程的开启状态,进而获取线程或进程池中空闲的线程或进程的数量;根据空闲的线程或进程的数量从消息队列中依次获取对应数量的处于排队状态的任务。
7.根据权利要求6所述的多任务防重处理方法,其特征在于每个客户端发送的一个任务请求对应分配一个会话ID,服务器根据接收到的会话ID和时间戳组合成该任务请求对应的标识序列号,为了保持序列号不会丢失和唯一性,标识序列号存放在请求页面的请求对象里,通过它向其它页面传递;对“用户”查询记录进行加锁操作;当发生关联更新的情况,具体为更新主表的时候有可能会更新到与之相关的子表,与此同时,其它用户也可能通过其它主表更新相应的子表同一条记录;为子表找一个入口...
【专利技术属性】
技术研发人员:朱洪区,
申请(专利权)人:中国农业银行股份有限公司深圳市分行,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。