
การ Deploy Django
WSGI, ASGI, Gunicorn, uWSGI, nginx, static files, environment variables, production settings
1ในบริบทของการ deploy Python คำย่อ WSGI ย่อมาจากอะไร?
ในบริบทของการ deploy Python คำย่อ WSGI ย่อมาจากอะไร?
คำตอบ
WSGI ย่อมาจาก Web Server Gateway Interface เป็นข้อกำหนดมาตรฐาน (PEP 3333) ที่นิยามว่าเว็บเซิร์ฟเวอร์สื่อสารกับแอปพลิเคชัน Python อย่างไร อินเทอร์เฟซนี้ให้ชั้นการ abstraction ระหว่างเว็บเซิร์ฟเวอร์กับแอปพลิเคชัน ทำให้แอปพลิเคชัน Python สามารถย้ายไปใช้กับเซิร์ฟเวอร์ที่รองรับ WSGI ต่าง ๆ ได้ เช่น Gunicorn, uWSGI หรือ mod_wsgi
2คำสั่ง Django ใดที่รวบรวมไฟล์ static ทั้งหมดไว้ในไดเรกทอรีเดียวสำหรับการใช้งานจริง?
คำสั่ง Django ใดที่รวบรวมไฟล์ static ทั้งหมดไว้ในไดเรกทอรีเดียวสำหรับการใช้งานจริง?
คำตอบ
คำสั่ง collectstatic จะรวบรวมไฟล์ static ทั้งหมดจากแต่ละแอป Django และไดเรกทอรีที่กำหนดใน STATICFILES_DIRS ไปยังไดเรกทอรีที่ระบุโดย STATIC_ROOT ขั้นตอนนี้จำเป็นในการใช้งานจริงเพราะเว็บเซิร์ฟเวอร์ (เช่น nginx) จะให้บริการไฟล์เหล่านี้โดยตรงโดยไม่ผ่าน Django ทำให้ประสิทธิภาพดีขึ้นอย่างมาก
3การตั้งค่า DEBUG ควรมีค่าใดในสภาพแวดล้อม production ของ Django?
การตั้งค่า DEBUG ควรมีค่าใดในสภาพแวดล้อม production ของ Django?
คำตอบ
DEBUG ต้องตั้งเป็น False ในการใช้งานจริง เมื่อ DEBUG เป็น True Django จะแสดงหน้าข้อผิดพลาดโดยละเอียดที่มีข้อมูลที่ละเอียดอ่อน (ตัวแปรสภาพแวดล้อม การกำหนดค่า stack trace) ซึ่งอาจถูกผู้โจมตีใช้ประโยชน์ได้ นอกจากนี้ Django ยังเก็บ query SQL ที่ดำเนินการทั้งหมดไว้ในหน่วยความจำเมื่อ DEBUG เป็น True ทำให้เกิดการรั่วไหลของหน่วยความจำบนเว็บไซต์ที่ใช้งานจริง
บทบาทหลักของ Gunicorn ใน stack การ deploy Django คืออะไร?
การตั้งค่า ALLOWED_HOSTS ใน Django มีจุดประสงค์อะไร?
+21 คำถามสัมภาษณ์
หัวข้อสัมภาษณ์ Django อื่นๆ
พื้นฐาน Python
Python เชิงวัตถุ
พื้นฐาน Django
Django Models - พื้นฐาน
Django Views
เทมเพลต Django
ฟอร์ม Django
QuerySets ขั้นสูง
การยืนยันตัวตนใน Django
Django Middleware
Django Admin
Django REST Framework
Django Signals
การอัปโหลดไฟล์
การแคชใน Django
Django Sessions
อีเมลใน Django
การทดสอบ Django
ความปลอดภัยของ Django
Django ORM ขั้นสูง
ประสิทธิภาพของ Django
Django & Celery
Django Channels
Django & GraphQL
Django & Docker
Django ในระบบนิเวศ Microservices
คำสั่ง Django แบบกำหนดเอง
การทำให้รองรับหลายภาษาใน Django
Design Patterns ใน Django
Django Async และ ASGI
Settings และการตั้งค่า Production
Observability และ Monitoring
เชี่ยวชาญ Django สำหรับการสัมภาษณ์ครั้งถัดไป
เข้าถึงคำถามทั้งหมด flashcards แบบทดสอบเทคนิค แบบฝึกหัด code review และตัวจำลองสัมภาษณ์
เริ่มใช้ฟรี