IIS/Win Server(온프레미스)를 사용하여 Python Flask 웹 앱을 제공하는 것이 문제를 해결할 가치가 있습니까?

IIS/Win Server(온프레미스)를 사용하여 Python Flask 웹 앱을 제공하는 것이 문제를 해결할 가치가 있습니까?

IIS에서 Python 웹 앱을 제공하는 것이 가능하다고 제안하는 몇 가지 리소스(제가 알 수 있는 것 중 거의 없음)가 있지만 실제로 이에 대한 실제 이야기를 듣거나 읽은 적이 없습니다.

거의 전적으로 Windows 매장인 조직에서 이 접근 방식을 고려할 가치가 있는지 알고 싶습니다.

Ubuntu 머신(조직에 최소한 어느 정도 지식이 있음)에서 Python을 실행하는 데 기술을 향상하고 투자하는 것이 훨씬 더 나은 옵션입니까?

이는 VM의 온프레미스 배포를 위한 것입니다. 클라우드 서비스에서 Python을 실행하는 것은 분명히 완전히 다른 이야기입니다.

답변1

IIS/Azure App Services(Windows)의 Python은 프로덕션 사이트에서도 매우 인기 있는 옵션이었습니다(Azure가 여전히 Windows Azure라고 불렸을 때). HttpPlatformHandler 또는 wfastcgi를 활용하면 IIS가 트래픽을 Python 프로세스로 전달할 수 있습니다.

그러나 실제 문제는 Python 웹 프레임워크/앱이 일반적으로 Windows에서 잘 개발/테스트되지 않는다는 사실에서 비롯됩니다. 따라서 문제가 발생하면 많은 프레임워크/앱 공급업체가 무시하는 소수 사용자 기반이 될 것이 거의 확실합니다.

Microsoft조차도 IIS/Windows에서 Python을 사용하려는 시도를 포기하기로 결정하고 고객에게 Azure App Services(Linux)로 마이그레이션할 것을 촉구했습니다.

중요한

Microsoft는 Linux의 App Service에 직접 배포하기 위해 이 문서에 설명된 대로 Windows의 App Service에 대한 Python 확장을 더 이상 사용하지 않습니다.

https://docs.microsoft.com/en-us/visualstudio/python/managing-python-on-azure-app-service?view=vs-2019

그러니 어느 길로 가는지 알아보는 것은 어렵지 않습니다.

온프레미스의 경우 Windows Server를 사용하여 Linux VM(Hyper-V)을 호스팅하거나 Linux Docker 컨테이너를 사용하거나 Linux 서버 상자를 직접 사용할 수 있습니다. 제가 함께 일한 가장 Windows 중심적인 고객조차도 현재 일부 Linux Docker 컨테이너를 실행하고 있습니다.

이는 Python 웹 앱에만 적용되는 것이 아닙니다. PHP/Go/Java/Node.js 웹 앱도 동일한 문제에 직면하므로 Linux에서 호스팅하는 것이 더 좋습니다.

관련 정보