Môi trường: AWS
HĐH: GoldenImage-amazonLinuxV2-2021-01-04_19.43.07
Nginx: 1.20.0
PHP-FPM: 7.3.33
Xúc tu bạch tuộc: 6.1.1351
phương pháp cũ
Vì vậy, chúng tôi hiện đang sử dụng một tập lệnh đẩy đơn giản để triển khai một trang web PHP cho 14 phiên bản AWS EC2. Tập lệnh này chỉ cần kết nối với từng máy chủ thông qua SSH và chạy lệnh git pull trong /mnt/web/public_html. Sau khi mã được cập nhật, mức sử dụng CPU vẫn ổn định khoảng 20-60%.
phương pháp mới
Chúng tôi đang cố gắng chuyển sang Octopus để triển khai vì nó mạnh mẽ hơn.Vấn đề mà chúng tôi đang gặp phải là ngay khi mã được triển khai tới máy chủ, mức sử dụng CPU tăng vọt lên 90-100%. Điều này khiến thời gian phản hồi tăng đột biến và thậm chí khiến trang web ném lỗi 502. Chúng tôi thậm chí đã để nó chạy khoảng 2 giờ một lần và nó dường như không bao giờ giảm.
Biểu đồ sử dụng CPU
Kịch bản trước khi triển khai:
if [ "$(get_octopusvariable "Octopus.Tentacle.CurrentDeployment.TargetedRoles")" = "máy chủ web" ]; sau đó
nginx -s dừng;
Sudo systemctl dừng php-fpm;
fi
Kịch bản sau triển khai:
chown -R ec2-user:ec2-user $(get_octopusvariable "Octopus.Action.Package.CustomInstallationDirectory");
if [ "$(get_octopusvariable "Octopus.Tentacle.CurrentDeployment.TargetedRoles")" = "máy chủ web" ]; sau đó
Sudo systemctl bắt đầu nginx;
sudo systemctl bắt đầu php-fpm;
Sudo systemctl status -l nginx;
fi
Một điều chúng tôi đã thử là tắt nén Octopus delta bằng hướng dẫn tại đây
https://octopus.com/docs/deployments/packages/delta-compression-for-package-transfers
Chúng tôi cũng đã thử tắt tùy chọn thanh lọc tại đây:
Thư mục cài đặt Octopus
Chúng tôi cũng so sánh các quyền đối với tệp trước và sau. Có vẻ như sử dụng cách cũ git đặt thư mục thành 775 và tệp thành 664. Octopus đặt thư mục thành 755 và tệp thành 644.
Có những câu chuyện mới trên trang chủ.