Hacker News 의견
  • PHP와 함께 사용될 때 Nginx Unit이 Nginx과 php-fpm의 조합을 능가한다는 보고.
  • Docker 환경에서 Nginx Unit을 통해 PHP를 실행하면 http와 fpm을 위한 별도의 컨테이너가 더 이상 필요하지 않아, Apache의 mod_php와 유사해짐.
  • Nginx Unit은 이진 컴파일 언어, Go, JavaScript (Node.js), Java, Perl, PHP, Python, Ruby, WebAssembly를 포함한 다양한 언어를 지원.
  • 일부 사용자들은 API를 통한 설정에 대한 강조를 의문시하며, 예측 가능한 시작 상태를 위해 파일을 통해 앱 서버를 설정하는 것을 선호.
  • Nginx Unit은 스택에서 php-fpm을 제거할 수 있게 해주며, 이는 PHP 앱을 컨테이너에 넣을 때 유익.
  • 사용자들은 복잡한 PHP Laravel 앱을 Nginx Unit으로 테스트할 때 상당한 속도 향상을 보고함.
  • Nginx Unit은 별도의 Docker 컨테이너가 필요 없이 각각 다른 언어 런타임/버전을 사용하는 여러 앱을 실행할 수 있게 해줌.
  • 일부 사용자들은 Nginx가 Nginx Unit이 Nginx과 어떻게 다른지, 그리고 왜 별도의 것이어야 하는지 설명하는 페이지를 제공해야 한다고 제안.
  • Nginx Unit의 구성 인터페이스는 JSON에 많이 의존하며, 일부 사용자들은 이를 번거롭게 느낌.
  • "Universal" 라벨에도 불구하고 Nginx Unit은 C++, Rust, ASP.NET을 지원하지 않지만 Perl은 지원.
  • 일부 사용자들은 여전히 Nginx Unit이 표준 Nginx보다 어떤 이점이 있는지, 그리고 Curl을 통한 JSON 제어와 내장 언어 지원에 대해 의문을 제기.
  • Nginx Unit은 자동 TLS 인증서를 포함하지 않으며, 이는 여전히 Certbot으로 수동으로 수행됨.
  • PHP와 함께 사용될 때 Nginx Unit이 Nginx과 php-fpm의 조합을 능가
  • Docker 환경에서 Nginx Unit을 통해 PHP를 실행하면 http와 fpm을 위한 별도의 컨테이너가 더 이상 필요하지 않아, Apache의 mod_php와 유사해짐

이 두 부분이 흥미롭네요.

이 방식이 조커 컨테이너에서 권장하는 컨테이너당 한 개의 서비스와도 더 맞아서 시도해봤었는데, 한 앱 내에서 라라벨 같은 라우팅 방식 앱과 단순 php 파일 서빙을 같이 할 수는 없는 제약이 있어서 포기한 적이 있습니다.
기본적으로 러닝 커브가 가파르다고 느껴지기도 했습니다.