谁知道Linux下500M内存,nginx php mysql 怎么分?

谁知道Linux下500M内存,nginx php mysql 怎么分?,第1张

This

is

for

a

system

with

little

memory

(32M

-

64M)

where

MySQL

playsan

important

part,

or

systems

up

to

128M

where

MySQL

is

used

together

withother

programs

(such

as

a

web

server)

cp

/usr/share/mysql/my-medium.cnf

/etc/my.cnf

每个php-fpm占用20M左右的内存,

max_children默认5个,子进程太多反而会增加master

process调度的负担,而且CPU进行过多的上下文切换也会浪费系统资源,得不偿失,所以按

php-fpm.conf

默认配置就好:

pm

=

dynamic

pm.max_children

=

5

pm.start_servers

=

2

pm.min_spare_servers

=

1

pm.max_spare_servers

=

3

php-fpm很像httpd用prefork那样运行,开始时fork出2个进程,根据请求数的增多自动fork多更多的子进程,配置里默认最多是5个。如果你的CPU多核,很强劲,

max_children

也可以设大点,比如可以设10个,要注意的是,即使内存够大,

max_children也不要弄太多,CPU得跟得上才行。

至于nginx.conf,默认值就好,默认是1个工作进程,单个工作进程最大并发1024。

worker_processes

1

worker_connections

1024

别看Nginx默认才一个工作进程(里面包含一个主线程),这并不妨碍Nginx高效。

httpd

prefork那一堆工作进程,静态和动态请求都一样占用线程,性能真没Nginx好。

对于多核CPU,Nginx还可以配置绑定

核芯,充分利用多核CPU。

最近急需这种方法,记录一下,有空的时候尝试^^

在 linux下,可以使用crontab + php的方法:

1、使用crontab –e编辑定时任务

内容为:

xx:xx:xx 执行一个test.php文件

2、php文件必须在文件头一行,加上解释器路径(就象perl做的那样)

#!/usr/local/bin/php

PHP的执行需要Apache的支持,shell脚本的执行需要Linux的支持,而Linux支持定时运行某个程序的功能


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/58757.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-02-27
下一篇2023-02-27

发表评论

登录后才能评论

评论列表(0条)

    保存