gpt4 book ai didi

python - 在 vps 服务器上优化 Django 应用程序

转载 作者:行者123 更新时间:2023-11-29 00:28:44 25 4
gpt4 key购买 nike

关于如何优化 vps 内存使用的任何好的教程或方法?我的公羊正在吃掉内存。我在 digitalocean 512mb vps ram 上使用 MySQL 作为数据库托管了 Django+Uwsgi+Nginx。我有两个站点,其中一个只是托管,没有任何事件,而第二个站点正在进行事件,但事件不多。它就像一个房地产网站。

我运行此命令行代码:free -m 并输出:

total               used free shared buffers cached
Mem: 491 406 85 0 17 108
buffers/cache: 280 210
Swap: 0 0 0

另一件事是,对于这两个站点,uswgi 正在监听不同的端口:127.0.0.1:8888 和 127.0.0.1:8889 这可能是吃 ram 的一部分吗?

当我运行 top 时,它会显示:

Tasks:  70 total,   1 running,  69 sleeping,   0 stopped,   0 zombie
Cpu(s): 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 503520k total, 410436k used, 93084k free, 18920k buffers
Swap: 0k total, 0k used, 0k free, 111772k cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
6381 meey 20 0 17320 1188 900 R 0.3 0.2 0:00.09 top
1 root 20 0 24336 2132 1256 S 0.0 0.4 0:00.70 init
2 root 20 0 0 0 0 S 0.0 0.0 0:00.08 kthreadd
3 root 20 0 0 0 0 S 0.0 0.0 0:00.42 ksoftirqd/0
5 root 20 0 0 0 0 S 0.0 0.0 0:00.12 kworker/u:0
6 root RT 0 0 0 0 S 0.0 0.0 0:00.00 migration/0
7 root RT 0 0 0 0 S 0.0 0.0 0:05.04 watchdog/0
8 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 cpuset
9 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 khelper
10 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kdevtmpfs
11 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 netns
12 root 20 0 0 0 0 S 0.0 0.0 0:02.12 sync_supers
13 root 20 0 0 0 0 S 0.0 0.0 0:00.05 bdi-default
14 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kintegrityd
15 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kblockd
16 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 ata_sff
17 root 20 0 0 0 0 S 0.0 0.0 0:00.00 khubd

更多:

PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
790 root 20 0 333m 129m 3992 S 0.0 26.3 2:52.59 uwsgi-core
635 mysql 20 0 870m 51m 4124 S 0.0 10.4 1:43.62 mysqld
649 www-data 20 0 63520 2436 920 S 0.0 0.5 0:30.02 nginx
779 root 20 0 124m 14m 3176 S 0.0 3.0 0:24.84 uwsgi-core
780 root 20 0 124m 14m 3176 S 0.0 3.0 0:24.30 uwsgi-core
647 www-data 20 0 63520 2592 944 S 0.0 0.5 0:21.78 nginx
648 www-data 20 0 63520 2436 920 S 0.0 0.5 0:21.72 nginx
646 www-data 20 0 63520 2568 916 S 0.0 0.5 0:20.87 nginx
602 root 20 0 84160 2148 1520 S 0.3 0.4 0:19.70 uwsgi
600 root 20 0 84160 2140 1520 S 0.0 0.4 0:19.09 uwsgi
606 root 20 0 84116 820 192 S 0.0 0.2 0:12.08 uwsgi
603 root 20 0 84116 820 196 S 0.0 0.2 0:11.99 uwsgi
7 root RT 0 0 0 0 S 0.0 0.0 0:05.05 watchdog/0
789 root 20 0 221m 29m 3956 S 0.0 6.1 0:03.58 uwsgi-core
12 root 20 0 0 0 0 S 0.0 0.0 0:02.12 sync_supers
402 syslog 20 0 243m 1224 904 S 0.0 0.2 0:01.90 rsyslogd
624 root 20 0 19112 1000 768 S 0.0 0.2 0:00.93 cron

最佳答案

正在吞噬你内存的是 MySQL。在运行数据库服务器时,您只能进行这么多的性能管理。它们旨在为了性能而占用内存。

uWSGI 和 Nginx 非常高效。 Django 并不精简,但内存使用也高度依赖于您的应用程序。如果您要加载大量模块,那会占用您的内存。

运行 free -m 并不能真正告诉我们哪些进程占用的内存最多。 ps ax 的输出如何,或者通过 top 查看?

关于python - 在 vps 服务器上优化 Django 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17634459/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com