限时 5折! 详情

hyperf 实战之单机部署(一)

1088 0 0

截止目前,问答系统的接口已经开发结束,下一步就是如何在正式服部署项目了。

尽管 hyperf 官方提供了几篇文章来描述如何部署 hyperf 应用,但是依然有不少同学搞不清楚到底如何部署 hyperf 应用。

接下来我们会分几篇文章,分别介绍如何单机部署、手动部署、自动化部署以及集群部署。

今天我们先来看看单机部署。

部署之前,请务必先保证项目中开启了 scan_cacheable,即 .env 文件中 SCAN_CACHEABLE=true 。

开启此配置后,首次扫描时会生成代理类和注解缓存,再次启动时,则可以直接使用缓存,极大优化内存使用率和启动速度。因为跳过了扫描阶段,所以会依赖 Composer Class Map,这也就要求我们必须要执行 --optimize-autoloader 优化索引。

即重启项目前,需要先执行 composer dump-autoload -o 命令。

fpm 模式下的 php 应用,我们可以选择 walle、jenkins 、hook 等部署,再不行,我们还可以手动 git pull 。

对于 hyperf 这样的 swoole 常驻项目,那么传统的工具还可以使用吗?

当然是可以的,只不过需要自己改下脚本,比如 walle,如果部署 hyperf 项目的机器只有一台,在进程被杀掉重启的过程中,接口会有1-2秒的时间不能提供服务,再配上 nginx,就会报 502 错误,这是我们不能接受的。

所以至少需要两台机器才能保

去购买

还有90%的精彩内容,购买继续阅读