WSGI (dibaca "whiz-gee") adalah singkatan dari Web Server Gateway Interface. Ini adalah standar interface antara web server (seperti Gunicorn, uWSGI, atau mod_wsgi di Apache) dan aplikasi web Python (seperti Flask, Django, dll). Tujuannya adalah agar web server dan aplikasi web bisa "berbicara" satu sama lain dengan cara yang seragam.
Penjelasan Sederhana:
WSGI adalah jembatan antara server dan aplikasi Python-mu. Web server seperti Nginx atau Apache tidak bisa langsung menjalankan aplikasi Python, jadi mereka butuh bantuan "jembatan" untuk melakukannya — itulah peran WSGI.
Komponen Utama WSGI:
-
WSGI server: Yang menangani permintaan HTTP dari pengguna (misalnya, Gunicorn atau uWSGI).
-
WSGI application: Aplikasi Python-mu (misalnya, app Django atau Flask) yang memproses request dan mengembalikan response.
Contoh Kode WSGI Sederhana:
def application(environ, start_response):
status = '200 OK'
headers = [('Content-type', 'text/plain')]
start_response(status, headers)
return [b"Hello, WSGI!"]
Kode ini adalah aplikasi Python yang mengikuti spesifikasi WSGI.
Kenapa WSGI Penting?
-
Standar: Menghindari kekacauan dalam integrasi antara aplikasi dan server.
-
Fleksibel: Bisa dipakai dengan berbagai web framework Python.
-
Stabil: Sudah lama jadi fondasi untuk deploy aplikasi Python web.
Kalau kamu pernah deploy aplikasi Flask atau Django dengan Gunicorn atau uWSGI, kamu sebenarnya sudah menggunakan WSGI, meskipun mungkin nggak langsung terasa.
0 Comments