这种场景下用怎么做比较好呢?

2024-06-19 10:54:09 +08:00
 lbxx

有一个固定的 python 程序已经开发好,需要为用户运行很多这个程序(每个用户可能运行 1 到多个此程序),只是启动参数不同罢了。

这种情况下,如何管理这些程序呢?试了一下用 docker ,为每个用户启动一个或多个 docker 容器,但是发现占用资源还挺大,有没有什么方法或者技术框架比较好解决的呢?望各位大佬不吝赐教

1572 次点击
所在节点    Python
10 条回复
coderluan
2024-06-19 11:05:40 +08:00
就用最普通的 virtual env 不行吗,一个用户建一个
lbxx
2024-06-19 11:36:43 +08:00
@coderluan 貌似都可以不用 virtual env ,直接同个环境运行,就是这样多个进程管理不知道有什么比较方便的框架没
tomczhen
2024-06-19 16:22:39 +08:00
Windows 下可以将 workdir 设置到 appdata 中,配置走 user profile ,这样可以在用户级别隔离。
45HXlKzal6W56zUJ
2024-06-19 18:19:35 +08:00
参数里面加一个 输出文件
ClericPy
2024-06-19 18:54:46 +08:00
场景像 Serverless ,但是你问出来了感觉不一定想用,虽然这是运维和架构上最省心的,有时候也是最省钱的

开一堆 worker 走消息队列,异步路线; RPC (或者普通 HTTP )同步路线

需要隔离吗?线索也太少了
xtyuns
2024-06-20 00:13:54 +08:00
可以试试用 PM2 来管理
lbxx
2024-06-22 10:07:02 +08:00
@ClericPy 感谢指教。severless 的方式感觉不是特别适合,因为每个任务都是长期运行的,不是短期任务。有想过用 celery 的形式不过还没试。不需要隔离的,只要运行起来就没问题
lbxx
2024-06-22 10:14:52 +08:00
@xtyuns 谢谢,我试试看
lbxx
2024-06-22 10:16:03 +08:00
@tomczhen 好像不需要隔离,只要管理好就行了,怎么管理方便就好
1543544726zy
2024-07-02 10:00:54 +08:00
python main.py --config config1.yaml

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1050794

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX