一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种远程控制仿真系统、方法及相关组件与流程

2021-12-07 21:29:00 来源:中国专利 TAG:


1.本发明涉及服务器领域,特别涉及一种远程控制仿真系统、方法及相关组件。


背景技术:

2.当前,程序软件在日常的开发设计工作中,基于成本和效率等方面的考虑,为了验证设计正确性和准确性,往往优先采用仿真的方式。这类设计仿真类软件普遍具有对任务执行的实时性要求较高且占用系统资源较高的特点。
3.现有的做法一般是在本地电脑安装仿真客户端或配置专门的仿真服务器进行仿真。本地电脑虽然使用和查看数据方便,但是因本地电脑的配置普遍相对不高,运行仿真任务时系统资源占用率较高,仿真任务长时间运行的过程中,用户很难在本机再进行其他任务;专门的仿真服务器在一定程度解决了本地电脑资源紧张的问题,但是需要通过远程登录查看仿真进度和获取数据,使用不便,尤其仿真任务量大时,容易造成各仿真服务器负载不均,无法有效管控系统资源,甚至在个别服务器上发生资源耗尽宕机的情况。
4.因此,如何提供一种解决上述技术问题的方案是目前本领域技术人员需要解决的问题。


技术实现要素:

5.有鉴于此,本发明的目的在于提供一种有效管理、仿真效果好的远程控制仿真系统、方法及相关组件。其具体方案如下:
6.一种远程控制仿真系统,包括:控制节点、本地节点和远程节点,所述控制节点通过rpyc调用接口与所述本地节点、所有所述远程节点均连接;其中:
7.所述控制节点用于,当收到所述本地节点的仿真请求,判断所述仿真请求对应的仿真任务的计划资源占用量与所有所述远程节点是否匹配,以确定所述仿真任务的执行目标机;所述执行目标机具体为所述本地节点或所述远程节点;
8.所述本地节点用于,向所述控制节点发送所述仿真请求,并通过调用paramiko模块向所述执行目标机发送所述仿真任务的仿真数据;
9.所述执行目标机用于,根据所述仿真数据执行所述仿真任务,得到仿真结果并通过调用所述paramiko模块将所述仿真结果发送给所述本地节点。
10.优选的,所述控制节点具体用于:
11.当收到所述本地节点的仿真请求,判断所述仿真请求对应的仿真任务是否为第一次执行,若是,则确定所述仿真任务的执行目标机为所述本地节点;
12.此时所述执行目标机用于根据所述仿真数据执行所述仿真任务并得到所述仿真结果。
13.优选的,所述本地节点还用于将执行所述仿真任务的实际资源占用量确定为所述计划资源占用量。
14.优选的,所述控制节点还用于:
15.当所有所述远程节点的闲置资源均无法满足所述仿真请求对应的仿真任务的计划资源占用量,将所述本地节点确定为所述执行目标机;
16.此时所述执行目标机用于根据所述仿真数据执行所述仿真任务并得到所述仿真结果。
17.优选的,所述控制节点还用于:
18.当所有所述远程节点和所述本地节点的闲置资源均无法满足所述仿真请求对应的仿真任务的计划资源占用量,向所述本地节点返回匹配失败信息。
19.优选的,所述控制节点还用于:
20.根据所述执行目标机在执行所述仿真任务时的实际资源占用量,更新所述计划资源占用量。
21.优选的,所述根据所述执行目标机在执行所述仿真任务时的实际资源占用量,更新所述计划资源占用量的过程,包括:
22.对所述执行目标机在执行所述仿真任务时的实际资源占用量与所述计划资源占用量求平均值,以更新所述计划资源占用量。
23.相应的,本技术还公开了一种远程控制仿真方法,应用于远程控制仿真系统,所述远程控制仿真系统包括控制节点、本地节点和远程节点,所述控制节点通过rpyc调用接口与所述本地节点、所有所述远程节点均连接;所述远程控制仿真方法包括:
24.所述本地节点向所述控制节点发送仿真请求;
25.当所述控制节点收到所述仿真请求,判断所述仿真请求对应的仿真任务的计划资源占用量与所有所述远程节点是否匹配,以确定所述仿真任务的执行目标机;
26.所述本地节点通过调用paramiko模块向所述执行目标机发送所述仿真任务的仿真数据;
27.所述执行目标机根据所述仿真数据执行所述仿真任务,得到仿真结果并通过调用所述paramiko模块将所述仿真结果发送给所述本地节点;
28.所述执行目标机具体为所述本地节点或所述远程节点。
29.相应的,本技术公开了一种远程控制仿真装置,包括:
30.存储器,用于存储计算机程序;
31.处理器,用于执行所述计算机程序时实现如上文所述远程控制仿真方法的步骤。
32.相应的,本技术还公开了一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上文所述远程控制仿真方法的步骤。
33.本技术公开了一种远程控制仿真系统,包括:控制节点、本地节点和远程节点,所述控制节点通过rpyc调用接口与所述本地节点、所有所述远程节点均连接;其中:所述控制节点用于,当收到所述本地节点的仿真请求,判断所述仿真请求对应的仿真任务的计划资源占用量与所有所述远程节点是否匹配,以确定所述仿真任务的执行目标机;所述执行目标机具体为所述本地节点或所述远程节点;所述本地节点用于,向所述控制节点发送所述仿真请求,并通过调用paramiko模块向所述执行目标机发送所述仿真任务的仿真数据;所述执行目标机用于,根据所述仿真数据执行所述仿真任务,得到仿真结果并通过调用所述paramiko模块将所述仿真结果发送给所述本地节点。本技术中控制节点通过rpyc调用接口建立与本地节点、远程节点的连接,确定执行目标机,并通过调用paramiko模块实现本地节
点与执行目标机之间的数据传递,搭建了可靠高效的系统架构,并有效实现了仿真任务的分配和管理,大幅提高了工作效率。
附图说明
34.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
35.图1为本发明实施例中一种远程控制仿真系统的结构分布图;
36.图2为本发明实施例中一种远程控制仿真系统的交互流程图;
37.图3为本发明实施例中一种远程控制仿真方法的步骤流程图。
具体实施方式
38.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
39.现有的做法一般是在本地电脑安装仿真客户端或配置专门的仿真服务器进行仿真。本地电脑虽然使用和查看数据方便,但是因本地电脑的配置普遍相对不高,运行仿真任务时系统资源占用率较高,仿真任务长时间运行的过程中,用户很难在本机再进行其他任务;专门的仿真服务器在一定程度解决了本地电脑资源紧张的问题,但是需要通过远程登录查看仿真进度和获取数据,使用不便,尤其仿真任务量大时,容易造成各仿真服务器负载不均,无法有效管控系统资源,甚至在个别服务器上发生资源耗尽宕机的情况。
40.本技术中控制节点通过rpyc调用接口建立与本地节点、远程节点的连接,确定执行目标机,并通过调用paramiko模块实现本地节点与执行目标机之间的数据传递,搭建了可靠高效的系统架构,并有效实现了仿真任务的分配和管理,大幅提高了工作效率。
41.本发明实施例公开了一种远程控制仿真系统,包括:控制节点1、本地节点2和远程节点3,控制节点1通过rpyc调用接口与本地节点2、所有远程节点3均连接;其中:
42.控制节点1用于,当收到本地节点2的仿真请求,判断仿真请求对应的仿真任务的计划资源占用量与所有远程节点3是否匹配,以确定仿真任务的执行目标机;执行目标机具体为本地节点2或远程节点3;
43.本地节点2用于,向控制节点1发送仿真请求,并通过调用paramiko模块向执行目标机发送仿真任务的仿真数据;
44.执行目标机用于,根据仿真数据执行仿真任务,得到仿真结果并通过调用paramiko模块将仿真结果发送给本地节点2。
45.可以理解的是,本实施例中rpyc调用接口是基于python语言的远程过程调用,具有调用透明的特点,本地端调用远端方法或运行脚本的效果与本地调用相差很小,几乎无感,同时rpyc调用接口支持异步运行,在发起任务后不会阻塞等待,又可以及时跟踪任务执行情况,所以rpyc调用接口非常适合基于python语言的分布式系统。本实施例中控制节点1
通过rpyc调用接口与本地节点2、所有远程节点3连接,意味着控制节点1、本地节点2和远程节点3之间的非数据形式的请求、命令或指令均通过rpyc调用接口实现,具体信息以发送节点暴露接口的形式向信息接收节点发出信息。
46.类似的,paramiko模块同样基于python语言,paramiko模块在远程传输数据上具有高效可靠的特性,日常仿真任务所需要的仿真数据通常数据量大且以文件格式存储,由paramiko模块来传输能够达到高效、无感、便于追踪的效果。
47.可以理解的是,本实施例的远程控制仿真系统中仿真任务的执行过程如下:本地节点2通过rpyc调用接口向控制节点1发送仿真请求,控制节点1通过rpyc调用接口收到本地节点2的仿真请求,判断仿真请求对应的仿真任务的计划资源占用量与远程节点3是否匹配,从而确定仿真任务的执行目标机,并将执行目标机的节点信息通过rpyc调用接口发送给本地节点2;本地节点2调用paramiko模块向执行目标机发送仿真任务的仿真数据;执行目标机根据仿真数据执行仿真任务,得到仿真结果并通过调用paramiko模块将仿真结果发送给本地节点2,本地节点1可对执行目标机异地启动该仿真任务并监控仿真任务的任务进度。图2即为执行目标机为某一远程节点3时的交互流程图。
48.进一步的,仿真任务的计划资源占用量由此前仿真的实际资源占用量确定,因此如果该仿真任务之前未执行过,控制节点1无法为其匹配远程节点3,只能由本地节点2来执行,也就是说,控制节点1具体用于:
49.当收到本地节点2的仿真请求,判断仿真请求对应的仿真任务是否为第一次执行,若是,则确定仿真任务的执行目标机为本地节点2;
50.此时执行目标机用于根据仿真数据执行仿真任务并得到仿真结果。
51.进一步的,本地节点2还用于将执行仿真任务的实际资源占用量确定为计划资源占用量。
52.可以理解的是,在常规的仿真任务匹配过程中,可能出现远程节点的资源无法匹配的情况,控制节点1还用于:
53.当所有远程节点3的闲置资源均无法满足仿真请求对应的仿真任务的计划资源占用量,将本地节点2确定为执行目标机;
54.此时执行目标机用于根据仿真数据执行仿真任务并得到仿真结果。
55.可以理解的是,如果执行目标机为本地节点2,则可略去发送仿真数据和仿真结果的步骤,本地节点2可直接获取仿真数据执行仿真任务,也可直接得到仿真结果并对其进行分析。
56.进一步的,控制节点1还用于:
57.当所有远程节点3和本地节点2的闲置资源均无法满足仿真请求对应的仿真任务的计划资源占用量,向本地节点2返回匹配失败信息。
58.可以理解的是,随着仿真任务的执行,为了使下次仿真时的计划资源占用量更为准确,可利用每次的实际资源占用量对计划资源占用量更新,每次的实际资源占用量由本地节点1通知执行目标机上报,执行目标机响应该通知向控制节点1上报此次仿真任务的实际资源占用量,因此控制节点1还用于:
59.根据执行目标机在执行仿真任务时的实际资源占用量,更新计划资源占用量。
60.可以理解的是,执行时间距离越近的仿真结果,越接近下次仿真的效果,因此越近
的仿真任务的实际资源占用量在更新计划资源占用量时权重越高。具体的,可对执行目标机在执行仿真任务时的实际资源占用量与计划资源占用量求平均值,以更新计划资源占用量。
61.本技术公开了一种远程控制仿真系统,包括:控制节点、本地节点和远程节点,所述控制节点通过rpyc调用接口与所述本地节点、所有所述远程节点均连接;其中:所述控制节点用于,当收到所述本地节点的仿真请求,判断所述仿真请求对应的仿真任务的计划资源占用量与所有所述远程节点是否匹配,以确定所述仿真任务的执行目标机;所述执行目标机具体为所述本地节点或所述远程节点;所述本地节点用于,向所述控制节点发送所述仿真请求,并通过调用paramiko模块向所述执行目标机发送所述仿真任务的仿真数据;所述执行目标机用于,根据所述仿真数据执行所述仿真任务,得到仿真结果并通过调用所述paramiko模块将所述仿真结果发送给所述本地节点。本技术实施例中控制节点通过rpyc调用接口建立与本地节点、远程节点的连接,确定执行目标机,并通过调用paramiko模块实现本地节点与执行目标机之间的数据传递,搭建了可靠高效的系统架构,并有效实现了仿真任务的分配和管理,大幅提高了工作效率。
62.相应的,本技术还公开了一种远程控制仿真方法,应用于远程控制仿真系统,所述远程控制仿真系统包括控制节点、本地节点和远程节点,所述控制节点通过rpyc调用接口与所述本地节点、所有所述远程节点均连接;参见图3所示,所述远程控制仿真方法包括:
63.s1:本地节点向控制节点发送仿真请求;
64.s2:当控制节点收到仿真请求,判断仿真请求对应的仿真任务的计划资源占用量与所有远程节点是否匹配,以确定仿真任务的执行目标机;
65.s3:本地节点通过调用paramiko模块向执行目标机发送仿真任务的仿真数据;
66.s4:执行目标机根据仿真数据执行仿真任务,得到仿真结果并通过调用paramiko模块将仿真结果发送给本地节点;
67.执行目标机具体为本地节点或远程节点。
68.本技术实施例中控制节点通过rpyc调用接口建立与本地节点、远程节点的连接,确定执行目标机,并通过调用paramiko模块实现本地节点与执行目标机之间的数据传递,搭建了可靠高效的系统架构,并有效实现了仿真任务的分配和管理,大幅提高了工作效率。
69.在一些具体的实施例中,当所述控制节点收到所述仿真请求,判断所述仿真请求对应的仿真任务的计划资源占用量与所有所述远程节点是否匹配,以确定所述仿真任务的执行目标机的过程,还包括:
70.当收到所述本地节点的仿真请求,判断所述仿真请求对应的仿真任务是否为第一次执行,若是,则确定所述仿真任务的执行目标机为所述本地节点;
71.此时所述执行目标机根据所述仿真数据执行所述仿真任务并得到所述仿真结果。
72.在一些具体的实施例中,该方法还包括:
73.所述本地节点将执行所述仿真任务的实际资源占用量确定为所述计划资源占用量。
74.在一些具体的实施例中,当所述控制节点收到所述仿真请求,判断所述仿真请求对应的仿真任务的计划资源占用量与所有所述远程节点是否匹配,以确定所述仿真任务的执行目标机的过程,还包括:
75.当所有所述远程节点的闲置资源均无法满足所述仿真请求对应的仿真任务的计划资源占用量,将所述本地节点确定为所述执行目标机;
76.此时所述执行目标机用于根据所述仿真数据执行所述仿真任务并得到所述仿真结果。
77.在一些具体的实施例中,当所述控制节点收到所述仿真请求,判断所述仿真请求对应的仿真任务的计划资源占用量与所有所述远程节点是否匹配,以确定所述仿真任务的执行目标机的过程,还包括:
78.当所有所述远程节点和所述本地节点的闲置资源均无法满足所述仿真请求对应的仿真任务的计划资源占用量,向所述本地节点返回匹配失败信息。
79.在一些具体的实施例中,该方法还包括:
80.根据所述执行目标机在执行所述仿真任务时的实际资源占用量,更新所述计划资源占用量。
81.在一些具体的实施例中,所述根据所述执行目标机在执行所述仿真任务时的实际资源占用量,更新所述计划资源占用量的过程,包括:
82.对所述执行目标机在执行所述仿真任务时的实际资源占用量与所述计划资源占用量求平均值,以更新所述计划资源占用量。
83.相应的,本技术实施例公开了一种远程控制仿真装置,包括:
84.存储器,用于存储计算机程序;
85.处理器,用于执行所述计算机程序时实现如上文任一实施例所述远程控制仿真方法的步骤。
86.相应的,本技术实施例还公开了一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上文任一项所述远程控制仿真方法的步骤。
87.其中,本实施例中具体有关远程控制仿真方法的相关内容可以参照上文实施例中的相关说明,此处不再赘述。
88.其中,本实施例中远程控制方阵装置和可读存储介质具有与上文中远程控制仿真系统相同的有益效果,此处不再赘述。
89.最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
90.以上对本发明所提供的一种远程控制仿真系统、方法及相关组件进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献