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

2024 年 6 月 19 日
 lbxx

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

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

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

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

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

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

https://study.congcong.us/t/1050794

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

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

© 2021 V2EX