将php文件(当前正在使用中)上传到服务器时会发生什么?

Ani*_*ish 3 php ftp file-upload

案例:
我有一个PHP脚本,目前正由许多用户执行.
此脚本需要一些时间才能完成(例如,从浏览器获取数据,处理数据,更新数据库等)

现在我修改了脚本,然后使用FTP客户端将其上传到服务器.FTP客户端愉快地上传它并说上传.


那现在真的发生了什么?
当我上传修改后的脚本时,当前执行会发生什么?

我想出的可能性是:

1)所有当前的执行都是拧紧的.
上载新脚本时,执行停止.如果是这种情况(我不这样做),如何在不影响当前执行的情况下将脚本上传到服务器?

2)使用旧脚本完成当前执行.当新请求到来时,它将使用新修改的脚本进行处理.

3)还有别的吗?

BOM*_*MEz 5

假设你index.php做了一些密集的计算,花了相当多的时间,然后拨打电话process.php

访问者访问您的网站并加载index.php.它由您的Web服务器软件(Apache,nginx,IIS等)加载到内存中,并提供给您的访问者.当你的访问者上运行这些计算index.php你决定同时上传的更新版本index.phpprocess.php.此时您的访问者将继续运行版本,index.php并且在刷新页面之前他们不会看到新版本.

然而,process.php在旧版本index.php调用它之后,他们会看到新版本.这是因为服务器读取所调用的任何文件,将其加载到内存中并将其提供给用户在服务器和用户之间创建会话.如果用户在部分上载时尝试获取process.php或index.php,则会出现错误.