[英]I do not understand very well what a PHP process is
我想通过flock
锁定文件。 我阅读了文档,并说
这些锁仅适用于当前的PHP进程。
那么什么是PHP process
? 如果Web服务器中有一个PHP项目,并且有许多客户端在其计算机的浏览器中打开该项目,这些客户端计算机是否都在启动不同的PHP进程? 如果是这样, flock
真的会锁定在那种情况下吗? 我想要的是,即使有许多其他客户端计算机试图在页面上启动相同的功能,如果我是第一个访问该文件的人,也要将该文件锁定在Web服务器上!
这一切都取决于哪个操作系统以及如何通过Web服务器设置服务器和php。 在Windows上,我相信它不是一个太难掌握的php.exe进程。 在Linux上,一个php进程处理每个apache请求。
例如,我发布了>
ps aux | grep php
我有:
root 4346 0.0 1.6 345920 19068 pts/0 T Mar12 0:04 emacs mission_insert.php
该示例表明我使用emacs打开了一个名为mission_insert.php的php文件,该文件未显示有关php请求的任何内容,但通过httpd / apache处理。
当我发出>
ps aux | grep httpd
我得到以下内容:
root 3255 0.0 2.3 616964 27720 ? Ss Mar11 0:22 /usr/sbin/httpd -DFOREGROUND
apache 7227 0.0 1.8 723060 22040 ? S 03:35 0:01 /usr/sbin/httpd -DFOREGROUND
apache 7228 0.0 1.7 722828 20752 ? S 03:35 0:01 /usr/sbin/httpd -DFOREGROUND
apache 7229 0.0 1.7 723500 20136 ? S 03:35 0:00 /usr/sbin/httpd -DFOREGROUND
apache 7230 0.0 1.8 723008 22324 ? S 03:35 0:01 /usr/sbin/httpd -DFOREGROUND
apache 7374 0.0 1.7 723136 20868 ? S 09:38 0:01 /usr/sbin/httpd -DFOREGROUND
apache 7380 0.0 2.0 725124 23840 ? S 09:38 0:01 /usr/sbin/httpd -DFOREGROUND
apache 7381 0.0 1.8 725140 21392 ? S 09:38 0:01 /usr/sbin/httpd -DFOREGROUND
apache 7382 0.0 1.9 724620 22880 ? S 09:38 0:00 /usr/sbin/httpd -DFOREGROUND
apache 7385 0.0 1.7 723028 20864 ? S 09:38 0:01 /usr/sbin/httpd -DFOREGROUND
apache 7578 0.0 0.9 617232 11396 ? S 10:22 0:00 /usr/sbin/httpd -DFOREGROUND
root 7628 0.0 0.0 112640 960 pts/0 R+ 11:27 0:00 grep --color=auto httpd
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.