php是动态还是静态

php是动态还是静态

php-fpm的进程数可以根据设置分为动态和静态。

静态:直接开启指定数量的php-fpm进程,不再增加或者减少;(推荐学习:PHP视频教程)

动态:开始的时候开启一定数量php-fpm进程,当请求变大的时候,动态的增加php-fpm进程数到上限,当空闲的时候自动释放空闲进程数到一个下限。

这两种不同的执行方式,可以根据服务器实际需求来进行调整。

立即学习“PHP免费学习笔记(深入)”;

这里先说一下涉及到这个的几个参数,他们分别是

pmpm.max_childrenpm.start_serverspm.min_spare_servers和pm.max_spare_servers。

登录后复制

pm表示用哪种方式,有两个值可以选择,就是static静态或者dynamic动态。在老一些的版本中,dynamic又被称作apache-like。这个要注意看配置文件给出的说明了。

下面4个参数的意思分别为:

pm.max_children静态方式下开启的

php-fpm进程数量;

pm.start_servers动态方式下的起始

php-fpm进程数量;pm.min_spare_servers动态方式下的最小php-fpm进程数量;

pm.max_spare_servers动态方式下的最大php-fpm进程数量。

如果将dm设置为static,那么就只有pm.max_children这个参数生效。系统会开启设置的数量个php-fpm进程。

如果将dm设置为dynamic,那么pm.max_children参数会失效,后面3个参数生效。

系统会在php-fpm运行开始的时候启动pm.start_servers个php-fpm进程,然后根据系统需求动态在pm.min_spare_servers和pm.max_spare_servers之间调整php-fpm进程数。

那么,对于我们的服务器,选择哪种执行方式比较好呢?

事实和Apache一样,我们运行的PHP程序在执行完成后,或多或少都会有内存泄露的问题。

这也是为什么开始的时候一个php-fpm进程只占用3M左右内存,运行一段时间后就会上升到20到30M的原因。所以,动态方式因为会结束掉多余进程,可以回收释放一些内存,所以推荐在内存较少的服务器上使用。

具体最大数量根据物理内存总大小除以20M得到。比如说512M的VPS,建议pm.max_spare_servers值设置为20。而至于pm.min_spare_servers,则建议根据服务器的负载情况来设置,比较合适的值在5到10之间。

对比较大内存的服务器来说,设置为静态的话会提高效率。因为频繁开关php-fpm进程也会有时滞,所以内存够大的情况下开静态效果会更好。数量可以根据物理内存总大小除以30M得到。比如说2GB内存的服务器,可以设置为50;4GB内存可以设置为100等。

以上就是php是动态还是静态的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2524646.html

(0)
上一篇 2025年3月5日 17:57:12
下一篇 2025年2月18日 00:19:30

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • php文件夹名字如何设置中文

    php文件夹名字如何设置中文? 首先,不建议使用中文文件名! 因为中文会被 URL编码发送,到服务器端的时候虽然会解码,但是如果和你的编码不一致,就解不出来了。 简单的说,URL中的中文 ,在常见的浏览器中,默认会以UTF-8编码进行编码后…

    2025年3月5日
    200
  • php文件打开是乱码

    php文件打开是乱码? php文件乱码有几种情况 1.你的文件编码不对,比如是gbk编码,但是你的编辑器打开的时候是使用utf8编码,不同编辑器设置方式不同,比如:sublime、Dreamweaver、phpstorm……可以百度相应的问…

    2025年3月5日
    200
  • php是单进程还是多进程

    要想写出一个php多进程的程序,其实就像把大象放在冰箱里有几步一样简单。 php实现多进程简单来说就三步:创建子进程,管理子进程,处理子进程。说起来简单,其中涉及到的知识却是不少,比如说你得知道每个进程都有一个进程号(pid),还得知道命令…

    2025年3月5日
    200
  • php如何制作下拉列表框

    本文实例讲述了php adodb生成下拉列表框功能。分享给大家供大家参考,具体如下: 一、代码 adodb.inc.php可从官方网站http://adodb.sourceforge.net/ 下载。 conn.php:  PConnect…

    2025年3月5日
    200
  • php是单继承吗

    php没有多继承的特性。即使是一门支持多继承的编程语言,我们也很少会使用这个特性。在大多数人看来,多继承不是一种好的设计方法。想要给某个类添加额外的特性,不一定要使用继承。这里我提供一种模拟多继承的方法以供参考。 PHP有一个魔术方法,叫做…

    2025年3月5日
    200
  • php如何执行shell

    php给我们提供了system(),exec(),passthru()这三个函数来调用外部的命令。 相关推荐:《php入门教程》 虽然这三个命令都能执行linux系统的shell命令,但是其实他们是有区别的: ·system() 输出并返回…

    2025年3月5日
    200
  • PHP如何在WAMP上运行

    php如何在wamp上运行?具体步骤如下: 相关推荐:《php入门教程》 执行PHP文件需要,在Apache服务器,开启的情况下才能查看。 1、把你的PHP项目文件发到wamp的www目录下面。 2、在确保wamp开启的情况下,打开浏览器。…

    2025年3月5日
    100
  • php如何在js中取值

    php获取js的值有如下方式: 1、php echo出js文件得到返回值,在gamemap.js文件中输出参数。 echo ”; 登录后复制 2、在页面中直接调用js方法,getAddress()方法执行后可以获得参数。 echo “ge…

    2025年3月5日
    200
  • php是工具还是技术

    php是一种编程语言,属于一种技术,下面看一下百度百科对于php的解释: PHP即“超文本预处理器”,是一种通用开源脚本语言。PHP是在服务器端执行的脚本语言,与C语言类似,是常用的网站编程语言。 PHP独特的语法混合了C、Java、Per…

    2025年3月5日
    200
  • php如何与扫描枪配合

    php如何与扫描枪配合?下面给大家进行相关介绍: 相关推荐:《php入门教程》 只要将你要输入条形码的文本框得到焦点,就是把光标移动到那,然后扫描枪会自动往那个文本框中输入条形码。 之后会有一个回车动作,相当于你用键盘输入条形码,再按下回车…

    2025年3月5日
    200

发表回复

登录后才能评论