虚拟化和复制Qt应用程序20次
Virtualise and duplicate Qt application 20 times
我想虚拟化和复制我在Qt(Windows与Qt 5.9.1(上C++开发的应用程序。 该应用程序已经开发完成,我想复制它 20 次。
注意:应用程序的每个实例都需要具有不同的 IP 地址,因为我的应用程序使用网络来工作。
我考虑过使用 openVz 或 Docker。虚拟化和复制应用程序的最佳方法是什么?
你不需要这些工具。
首先要做的是删除人为的"1 个应用程序"限制。默认情况下,Windows 允许同一正在运行的程序的多个实例,因此您采取了一些措施来阻止它。别这样了。
接下来要做的是为机器分配 20 个 IP 地址。这完全直接符合您的要求。
最后,您需要bind
特定的IP地址而不是0.0.0.0
。枚举所有可用的接口,并按随机顺序尝试它们。(效率 - 如果您以相同的顺序尝试它们,所有 20 个实例都会尝试抓取第一个 IP,其中 19 个实例会失败。在第二次尝试中,18 次将失败。随机化意味着大多数实例与几次尝试绑定(。
您需要命令fork()
来创建具有不同 pid 的新实例。
一个很好的例子:C++中的fork((
您可以编写一个 bat/vb 脚本,该脚本将在 docker 中运行您的应用程序 20 次循环,自定义网络设置类似于docker network create
- https://docs.docker.com/network/host/
- https://docs.docker.com/v17.09/engine/userguide/networking/get-started-macvlan/#macvlan-8021q-trunk-bridge-mode-example-usage
相关文章:
- 基于 MFC 对话框的应用程序无法调用对话框两次
- 虚拟化和复制Qt应用程序20次
- 有没有办法在C++应用程序的多次执行中保存值?
- 我的 SDL2 应用程序仅在第一次键盘输入后出现严重延迟
- 如何在C 中每个应用程序一次播种MT19937并多次使用它
- qt :: qfiledialog第二次称为我的应用程序
- 在Fedora 20 x86_64上编译32位Linux应用程序时,请使用SNDFILE库
- 应用程序在第一次strcat_s崩溃
- 在正常应用程序中,当信号量第一次由服务创建时,它被拒绝访问
- 我是否需要锁才能同时使用同一应用程序两次写入套接字
- 获取第三方点击一次应用程序的配置文件夹
- JNI_CreateJavaVM() 每隔一次运行应用程序时都会失败(确切地说)
- 使Qt应用程序在Fedora 20上失败:/usr/bin/ld:找不到-lGL
- c ++:TCP服务器"bind"功能失败(errno 98),如果我在两次连续应用程序启动之间没有等待足够的时间
- 当从应用程序多次调用数据库过程时,性能是否会受到影响
- C++ String 的 "insert" 函数在多次运行时会破坏应用程序
- 子访问父变量/定义变量一次,在整个应用程序中使用
- QT创建者:c++应用程序运行几次后中断
- QMediaPlayer应用程序在短时间内播放多次时没有响应
- 为什么当我第二次尝试启动同一个线程时,应用程序会崩溃