Score:1

การให้บริการเว็บแอป Python Flask กับ IIS/Win Server (ในองค์กร) คุ้มค่ากับปัญหาหรือไม่

ธง cn

มีแหล่งข้อมูลไม่กี่แห่ง (น้อยมากจากสิ่งที่ฉันสามารถบอกได้) แนะนำว่าการให้บริการเว็บแอป Python จาก IIS นั้นทำได้ แต่ฉันไม่เคยได้ยินหรืออ่านเรื่องราวในโลกแห่งความเป็นจริงใด ๆ เกี่ยวกับสิ่งนี้ในทางปฏิบัติ

ฉันต้องการทราบว่าแนวทางนี้ควรค่าแก่การพิจารณาในองค์กรที่เกือบจะเป็นร้าน Windows เพียงอย่างเดียวหรือไม่

การเพิ่มทักษะและการลงทุนในการใช้งาน Python จากเครื่อง Ubuntu (ซึ่งอย่างน้อยก็มีความรู้ในองค์กร) เป็นตัวเลือกที่ดีกว่าอย่างมากมายหรือไม่?

สิ่งนี้มีไว้สำหรับการปรับใช้ภายในองค์กรบน VM การเรียกใช้ Python บนบริการคลาวด์นั้นเป็นเรื่องราวที่แตกต่างไปจากเดิมอย่างสิ้นเชิง

Michael Hampton avatar
cz flag
ฉันไม่เคยได้ยินว่าแอป _production_ Python ทำงานเบื้องหลัง IIS หรือบน Windows สำหรับเรื่องนั้น แต่ฉันคิดว่าทุกอย่างเป็นไปได้ ในทางเทคนิคแล้วคุณสามารถทำได้อย่างแน่นอน มันแตกต่างเล็กน้อยกับการพร็อกซีเว็บแอปอื่น ๆ
mforsetti avatar
tz flag
แทนที่จะใช้พร็อกซี (ย้อนกลับ) IIS [รองรับ WSGI](https://docs.microsoft.com/en-us/visualstudio/python/configure-web-apps-for-iis-windows?view=vs-2019) ผ่าน [`wfastcgi`](https://pypi.org/project/wfastcgi/); แม้ว่าการใช้ Python ใน Windows กับ *nix จะมีความแตกต่าง โดยเฉพาะอย่างยิ่งหากคุณเริ่มใช้โมดูลภายนอก
davidlars avatar
cn flag
ขอบคุณ วิธี wfastcgi ดูคุ้มค่าที่จะพิจารณา หวังว่าการใช้โมดูลภายนอกจะไม่กลายเป็นปัญหา การโหลดแอปเหล่านี้จะไม่เลวร้ายเกินไป แอปภายในสำหรับผู้ใช้บางกลุ่ม ฉันคิดว่ามันไม่เสียหายที่จะลอง ดูเหมือนว่าเป็นการฝึกฝนที่หายากโดยได้รับความช่วยเหลือเพียงเล็กน้อยทุกที่หาก / เมื่อสิ่งต่าง ๆ ไปทางใต้
Score:3
ธง vn

Python บน IIS/Azure App Services (Windows) ค่อนข้างเป็นตัวเลือกยอดนิยม (เมื่อ Azure ยังคงเรียกว่า Windows Azure) สำหรับไซต์ที่ใช้งานจริงเช่นกัน คุณสามารถใช้ HttpPlatformHandler หรือ wfastcgi เพื่อให้ IIS ส่งต่อการรับส่งข้อมูลไปยังกระบวนการ Python

อย่างไรก็ตาม ความท้าทายที่แท้จริงมาจากข้อเท็จจริงที่ว่า Python web frameworks/apps มักไม่ได้รับการพัฒนา/ทดสอบบน Windows ค่อนข้างดี ดังนั้นหากมีอะไรผิดพลาด คุณก็เกือบจะแน่ใจว่าเป็นฐานผู้ใช้ส่วนน้อยที่ผู้จำหน่าย framework/app หลายรายละเลย

แม้แต่ Microsoft ก็ตัดสินใจละทิ้งความพยายามใน Python บน IIS/Windows และกระตุ้นให้ลูกค้าย้ายไปยัง Azure App Services (Linux)

สิ่งสำคัญ

Microsoft เลิกใช้ส่วนขยาย Python สำหรับ App Service แล้ว Windows ตามที่อธิบายไว้ในบทความนี้เพื่อสนับสนุนการปรับใช้โดยตรง ไปยัง App Service บน Linux

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 จะดีกว่า

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา