symfony - 在单独的虚拟机上运行 symfony 命令
问题描述
我有一个在 apache ubuntu 18.04 vm (vm1) 上运行 Symfony 5.2 的应用程序。用户将资产上传到最初存储在文件系统中的应用程序。然后我在 cronjob 上触发了一个 symfony 命令,它将:
- 从 fs 读取并从 db 读取
- 使用终端命令操作资产
- 上传到单独的存储
- 从文件系统中删除资产并更新数据库。
该命令非常繁重,因此我想在单独的虚拟机上运行它以避免影响用户体验。我的问题是如何最好地实现这一目标。
我现在的想法是我可以
- 在 vm1 上禁用命令
- 使用相同的代码库设置新的 vm (vm2)。在 vm2 上使用 cronjob 触发命令
- 以某种方式允许 vm1 和 vm2 之间的通信(我猜两者都在同一个专用网络中)
- 以某种方式允许 vm2 对 vm1 上的 fs 进行读/写访问(可能可以通过在 vm2 访问的 vm1 上设置 nfs 来完成)
- 不知何故,允许 vm2 对 vm1 上的 mysql db 进行读/写访问(我猜想打开端口 3306 到 vm2 的私有 ip)
这是最好的前进方式还是 symfony 有一些支持来更好地实现这一目标?
解决方案
推荐阅读
- java - 计算 H2 数据库中的重复行
- javascript - 如何使用 javascript 在表单中提交数据
- python - 根据第一个元素长度递归地将列表拆分为子列表
- javascript - 合并具有相同值且位于同一行的 HTML 表格单元格
- twitter - Twitter 使用 WOE_ID 为 24 个城镇中的每个城镇返回了相同的印度热门话题
- git - Git 子模块在 Jenkins 中构建,显示自上次构建以来子模块的更改
- ssl - 将 Zscaler 证书安装到 Anaconda3
- css - 方括号在 :not([]) 中有什么作用?- ':not([对齐])'
- angular - 如何使用 $localize 传递变量
- reporting-services - 在 SSRS 2014 上更改列组中最大值的字段填充