Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/263.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 无停机Laravel部署_Php_Laravel_Continuous Integration_Continuous Delivery - Fatal编程技术网

Php 无停机Laravel部署

Php 无停机Laravel部署,php,laravel,continuous-integration,continuous-delivery,Php,Laravel,Continuous Integration,Continuous Delivery,我想在不停机的情况下将Laravel应用程序从Gitlab部署到服务器。在服务器上,我使用php artisan serve为应用程序提供服务。目前,我想首先复制所有文件,然后在服务器上停止旧的php artisan-serve进程,并在服务器上的目录中使用新文件启动一个新进程。但是,这会引入一个小的停机时间。有没有办法避免这种情况?如果您使用的是单台服务器,则无法实现0停机时间。如果停机时间是系统的关键部分,那么请巧妙地使用两台服务器并在它们之间实现负载平衡。请记住,没有主机或VPS提供商可以

我想在不停机的情况下将Laravel应用程序从Gitlab部署到服务器。在服务器上,我使用
php artisan serve
为应用程序提供服务。目前,我想首先复制所有文件,然后在服务器上停止旧的
php artisan-serve
进程,并在服务器上的目录中使用新文件启动一个新进程。但是,这会引入一个小的停机时间。有没有办法避免这种情况?

如果您使用的是单台服务器,则无法实现0停机时间。如果停机时间是系统的关键部分,那么请巧妙地使用两台服务器并在它们之间实现负载平衡。请记住,没有主机或VPS提供商可以确保您提供100%的可用性。因此,如果您想在部署过程中获得100%的可用性,在一个具有讽刺意味的情况下,您的站点可能已经在另一个时间关闭了。我想说的是,如果重启
php artisan serve
的微小时刻很重要,那么可以扩展到多个服务器。 一个解决方案是使用一些第三方服务(如CloudFlare),它可以智能地检测服务器停机的情况,并在服务器返回时通知用户,我个人就是这样使用的。 如果你真的想要完全正常运行时间,kubernetes的docker是你的技术