鱼儿耶yu 发表于 2024-4-10 21:55:00

【待反馈】python项目高内存会被杀死,如何解决?

问题描述:在网站-python项目中部署了python程序,程序使用多线程。当线程超过3000时项目运行会异常卡顿,线程再高就会被杀死。

信息:
服务器内存64G。python程序顶多占用10G,内存足够用,被杀死的时候内存在60%左右,很充裕。

补充:
是不是某个配置文件限制了python的内存占用?有没有大佬懂这一方面的知识。

堡塔运维南一 发表于 2024-4-11 14:23:17

您好,对于这种情况,可以通过以下几个方向去尝试一下:

1、减少线程数量:尽量使用进程池或线程池来限制并发执行的任务数量,避免创建过多的线程。
2、优化代码:检查你的代码是否可以进行优化,以减少线程间的通信和同步开销。
3、检查 ulimit 设置:在 Linux 系统上,你可以使用 ulimit -a 命令来查看当前的资源限制设置,并使用 ulimit -u 来设置最大线程数。
4、检查云服务器或容器限制:如果你使用的是云服务器或容器环境,检查相关的资源限制配置。
5、监控和诊断:使用系统监控工具(如 top, htop, vmstat 等)来观察系统资源的使用情况,找出瓶颈所在。
6、考虑使用其他并发模型:如果可能的话,考虑使用异步 I/O、协程或其他并发模型来替代多线程,以减少线程调度开销。
页: [1]
查看完整版本: 【待反馈】python项目高内存会被杀死,如何解决?