CN114675930A - 一种主机模拟通信工具 - Google Patents
一种主机模拟通信工具 Download PDFInfo
- Publication number
- CN114675930A CN114675930A CN202210263154.4A CN202210263154A CN114675930A CN 114675930 A CN114675930 A CN 114675930A CN 202210263154 A CN202210263154 A CN 202210263154A CN 114675930 A CN114675930 A CN 114675930A
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- host
- agent
- host computer
- virtualization
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/548—Queue
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供一种主机模拟通信工具,涉及主机模拟通信技术领域。该主机模拟通信工具,包括主机、虚拟机、虚拟化后端设备、虚拟化前端设备,所述主机和虚拟机中分别设置有主机代理和虚拟机代理,主机和虚拟机分别通过消息指令与主机代理和虚拟机代理进行通信,所述虚拟化后端设备用于与虚拟化前端设备配合完成主机代理和虚拟机代理之间的通信,所述虚拟化前端设备用于与虚拟化后端设备配合完成主机代理和虚拟机代理之间的通信。该工具可以在一台机器上模拟n个主机,并且可以通过修改配置文件,自定义增删主机个数,自定义通信接口内容以及接口传输内容,具有很强的通用性,并且大大减少了成本的消耗,也能根据用户自身的需求进行定义。
Description
技术领域
本发明涉及主机模拟通信技术领域,具体为一种主机模拟通信工具。
背景技术
目前,工控环境下的主机装置越来越多,通常需要管理几百到上千台主机,因此,对于集中管理的需求量越来越大,由于在现有的实验室环境下,无法提供这么多的主机进行测试,为了保证主机管理在工控现场的稳定性和可用性,故设计模拟软件对主机进行模拟通信。
现有技术通过主机客户端工具,能够将一台台的主机连接到主机管理工具上,但是这样对于主机的需求量较大,且工具的开发量较大,现有技术虽然能够更加准确的将一台台主机连接到主机管理工具上,但是其使用成本较大,且有很大的浪费,实用性不高。
发明内容
(一)解决的技术问题
针对现有技术的不足,本发明提供了一种主机模拟通信工具,解决了现有技术虽然能够更加准确的将一台台主机连接到主机管理工具上,但是其使用成本较大,且有很大的浪费,实用性不高的问题。
(二)技术方案
为实现以上目的,本发明通过以下技术方案予以实现:一种主机模拟通信工具,包括主机、虚拟机、虚拟化后端设备、虚拟化前端设备,所述主机和虚拟机中分别设置有主机代理和虚拟机代理,主机和虚拟机分别通过消息指令与主机代理和虚拟机代理进行通信,所述虚拟化后端设备用于与虚拟化前端设备配合完成主机代理和虚拟机代理之间的通信,所述虚拟化前端设备用于与虚拟化后端设备配合完成主机代理和虚拟机代理之间的通信。
优选的,所述主机设置为一个,所述虚拟机可以设置为多个。
优选的,所述主机代理还用于接收主机上的应用的注册信息,向消息总线注册,并连接虚拟化后端设备。
优选的,所述虚拟机代理还用于接收虚拟机上应用的注册信息,并连接虚拟化前端设备。
优选的,所述主机代理还用于接收消息总线发来的消息指令,并按照消息关键字通过虚拟化后端设备和虚拟化前端设备将所述消息指令发送给虚拟机代理,按照消息关键字主机上的应用的注册信息,将消息指令发送给主机上的应用。
优选的,所述虚拟机代理还用于根据所述消息关键字和虚拟机上的应用的注册信息,将所述消息指令发送给虚拟机上的应用,并且用于接收虚拟机上的应用向发送的消息指令,并按照消息关键字通过虚拟化前端设备和虚拟化后端设备将所述消息指令发送给主机代理。
优选的,一种主机模拟通信工具的使用方法,包括以下步骤:
S1.首先通过采用python的mutiprocess对进程进行统一管理,采用队列的方式保存所有进程信息;
S2.模拟程序启动后读取配置文件,设置对应的进程个数,每个子进程模拟一台主机;
S3.模拟正常的客户端与主机管理工具进行通信;
S4.通过修改配置文件修改接口内容以及传输数据,从而模拟大量数据通信;
S5.采用master-worker模式,Master对任务进行切分,并放入任务队列;然后,触发Worker处理任务。
优选的,所述步骤S1中保存的进程信息包括进程号,进程名字,方便添加和删除等信息。
优选的,所述master-worker模式的具体实现过程如下:
1)Client将任务进程传递给Master;
2)Master对任务进程进行拆分,并放入任务队列中;
3)任务队列同时触发多个Worker处理任务;
4)多个Worker分别对任务进程进行处理,并将处理结果存储在结果集中;
5)结果集将处理结果信息返还到Master,并且Master与Client进行通信。
(三)有益效果
本发明提供了一种主机模拟通信工具。具备以下有益效果:
1、本发明提供了一种主机模拟通信工具,通过该工具可以在一台机器上模拟n个主机,并且可以通过修改配置文件,自定义增删主机个数,自定义通信接口内容以及接口传输内容,具有很强的通用性。
2、本发明提供了一种主机模拟通信工具,该工具通过采用python的mutiprocess对进程进行统一管理,采用队列的方式保存所有进程信息,模拟程序启动后读取配置文件,设置对应的进程个数,每个子进程模拟一台主机,并且模拟正常的客户端与主机管理工具进行通信,通过修改配置文件修改接口内容以及传输数据,从而模拟大量的数据通信,大大减少了成本的消耗,也能根据用户自身的需求进行定义,使用非常方便。
附图说明
图1为本发明的通信过程示意图;
图2为本发明的master-worker模式过程示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例:
如图1-2所示,本发明实施例提供一种主机模拟通信工具,包括主机、虚拟机、虚拟化后端设备、虚拟化前端设备,主机和虚拟机中分别设置有主机代理和虚拟机代理,主机和虚拟机分别通过消息指令与主机代理和虚拟机代理进行通信,虚拟化后端设备用于与虚拟化前端设备配合完成主机代理和虚拟机代理之间的通信,虚拟化前端设备用于与虚拟化后端设备配合完成主机代理和虚拟机代理之间的通信。
主机设置为一个,虚拟机可以设置为多个,主机代理还用于接收主机上的应用的注册信息,向消息总线注册,并连接虚拟化后端设备,虚拟机代理还用于接收虚拟机上应用的注册信息,并连接虚拟化前端设备,主机代理还用于接收消息总线发来的消息指令,并按照消息关键字通过虚拟化后端设备和虚拟化前端设备将消息指令发送给虚拟机代理,按照消息关键字主机上的应用的注册信息,将消息指令发送给主机上的应用,虚拟机代理还用于根据消息关键字和虚拟机上的应用的注册信息,将消息指令发送给虚拟机上的应用,并且用于接收虚拟机上的应用向发送的消息指令,并按照消息关键字通过虚拟化前端设备和虚拟化后端设备将消息指令发送给主机代理。
该主机模拟通信工具的使用方法,包括以下步骤:
S1.首先通过采用python的mutiprocess对进程进行统一管理,采用队列的方式保存所有进程信息;
S2.模拟程序启动后读取配置文件,设置对应的进程个数,每个子进程模拟一台主机;
S3.模拟正常的客户端与主机管理工具进行通信;
S4.通过修改配置文件修改接口内容以及传输数据,从而模拟大量数据通信;
S5.采用master-worker模式,Master对任务进行切分,并放入任务队列;然后,触发Worker处理任务。
步骤S1中保存的进程信息包括进程号,进程名字,方便添加和删除等信息。
其master-worker模式的具体实现过程如下:
1)Client将任务进程传递给Master;
2)Master对任务进程进行拆分,并放入任务队列中;
3)任务队列同时触发多个Worker处理任务;
4)多个Worker分别对任务进程进行处理,并将处理结果存储在结果集中;
5)结果集将处理结果信息返还到Master,并且Master与Client进行通信。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
Claims (9)
1.一种主机模拟通信工具,包括主机、虚拟机、虚拟化后端设备、虚拟化前端设备,其特征在于:所述主机和虚拟机中分别设置有主机代理和虚拟机代理,主机和虚拟机分别通过消息指令与主机代理和虚拟机代理进行通信,所述虚拟化后端设备用于与虚拟化前端设备配合完成主机代理和虚拟机代理之间的通信,所述虚拟化前端设备用于与虚拟化后端设备配合完成主机代理和虚拟机代理之间的通信。
2.根据权利要求1所述的一种主机模拟通信工具,其特征在于:所述主机设置为一个,所述虚拟机可以设置为多个。
3.根据权利要求1所述的一种主机模拟通信工具,其特征在于:所述主机代理还用于接收主机上的应用的注册信息,向消息总线注册,并连接虚拟化后端设备。
4.根据权利要求1所述的一种主机模拟通信工具,其特征在于:所述虚拟机代理还用于接收虚拟机上应用的注册信息,并连接虚拟化前端设备。
5.根据权利要求1所述的一种主机模拟通信工具,其特征在于:所述主机代理还用于接收消息总线发来的消息指令,并按照消息关键字通过虚拟化后端设备和虚拟化前端设备将所述消息指令发送给虚拟机代理,按照消息关键字主机上的应用的注册信息,将消息指令发送给主机上的应用。
6.根据权利要求1所述的一种主机模拟通信工具,其特征在于:所述虚拟机代理还用于根据所述消息关键字和虚拟机上的应用的注册信息,将所述消息指令发送给虚拟机上的应用,并且用于接收虚拟机上的应用向发送的消息指令,并按照消息关键字通过虚拟化前端设备和虚拟化后端设备将所述消息指令发送给主机代理。
7.一种主机模拟通信工具的使用方法,其特征在于:包括以下步骤:
S1.首先通过采用python的mutiprocess对进程进行统一管理,采用队列的方式保存所有进程信息;
S2.模拟程序启动后读取配置文件,设置对应的进程个数,每个子进程模拟一台主机;
S3.模拟正常的客户端与主机管理工具进行通信;
S4.通过修改配置文件修改接口内容以及传输数据,从而模拟大量数据通信;
S5.采用master-worker模式,Master对任务进行切分,并放入任务队列;然后,触发Worker处理任务。
8.根据权利要求7所述的一种主机模拟通信工具的使用方法,其特征在于:所述步骤S1中保存的进程信息包括进程号,进程名字,方便添加和删除等信息。
9.根据权利要求7所述的一种主机模拟通信工具,其特征在于:所述master-worker模式的具体实现过程如下:
1)Client将任务进程传递给Master;
2)Master对任务进程进行拆分,并放入任务队列中;
3)任务队列同时触发多个Worker处理任务;
4)多个Worker分别对任务进程进行处理,并将处理结果存储在结果集中;
5)结果集将处理结果信息返还到Master,并且Master与Client进行通信。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210263154.4A CN114675930A (zh) | 2022-03-17 | 2022-03-17 | 一种主机模拟通信工具 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210263154.4A CN114675930A (zh) | 2022-03-17 | 2022-03-17 | 一种主机模拟通信工具 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114675930A true CN114675930A (zh) | 2022-06-28 |
Family
ID=82075124
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210263154.4A Pending CN114675930A (zh) | 2022-03-17 | 2022-03-17 | 一种主机模拟通信工具 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114675930A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117640747A (zh) * | 2023-12-12 | 2024-03-01 | 北京志凌海纳科技有限公司 | 一种基于代理服务的vhost-user重连方法和系统 |
-
2022
- 2022-03-17 CN CN202210263154.4A patent/CN114675930A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117640747A (zh) * | 2023-12-12 | 2024-03-01 | 北京志凌海纳科技有限公司 | 一种基于代理服务的vhost-user重连方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105446806B (zh) | 一种应用程序无响应的处理方法及装置 | |
CN113656227A (zh) | 一种芯片验证方法、装置、电子设备及存储介质 | |
CN108460068B (zh) | 报表导入导出的方法、装置、存储介质及终端 | |
CN110290166B (zh) | 跨集群数据交互方法、系统、装置及可读存储介质 | |
CN110825731A (zh) | 数据存储方法、装置、电子设备及存储介质 | |
CN110968509A (zh) | 一种批量化自定义变量的方法和系统 | |
CN108363787B (zh) | 一种ifc文件并行存储方法、装置及系统 | |
US20070300048A1 (en) | System and method for targeting commands to concurrent computing units executing a concurrent computing process | |
CN109213658A (zh) | 一种巡检方法和装置 | |
CN101093477B (zh) | 电子表格数据处理方法及电子表格数据处理系统 | |
CN112256670A (zh) | 数据迁移方法、终端设备及可读存储介质 | |
CN109408376B (zh) | 一种配置数据的生成方法、装置、设备及存储介质 | |
CN115203054A (zh) | 一种虚拟化芯片测试系统 | |
CN111262753A (zh) | 一种numa节点个数自动配置方法方法、系统、终端及存储介质 | |
CN113919158A (zh) | 一种用于飞行控制面板的仿真方法、装置及存储介质 | |
CN112199273B (zh) | 一种虚拟机压力/性能测试方法及系统 | |
CN112181485A (zh) | 脚本执行方法、装置、电子设备及存储介质 | |
CN114675930A (zh) | 一种主机模拟通信工具 | |
CN113641628B (zh) | 数据质量检测方法、装置、设备及存储介质 | |
CN113495498B (zh) | 用于硬件设备的模拟方法、模拟器、设备和介质 | |
CN113220586A (zh) | 一种自动化的接口压力测试执行方法、装置和系统 | |
CN114138182A (zh) | 一种分布式云硬盘的跨存储在线克隆方法、系统及装置 | |
CN106850546B (zh) | 一种雷达终端的地图模块软件组织方法 | |
GB2365600A (en) | Method, system and computer program for enabling high speed disaster recovery and relocation of computer workloads | |
CN113434359B (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 |