a WSGI | evieplus Academy | Bilgi Teknolojileri Platformu

WSGI

WSGI Nedir?

WSGI, Web Sunucusu Ağ Geçidi Arayüzüdür. Bir web sunucusunun web uygulamalarıyla nasıl iletişim kurduğunu ve web uygulamalarının bir isteği işlemek için nasıl birbirine zincirlenebileceği konusunda özellikleri açıklar.

WSGI bir sunucu, python modülü, framework, API veya herhangi bir yazılım değildir. Bu sadece sunucu ve uygulamanın iletişim kurduğu bir arayüz spesifikasyonudur. Hem sunucu hem de uygulama arayüzü tarafları PEP 3333'te belirtilmiştir. WSGI spesifikasyonuna bir uygulama (veya framework veya araç seti) yazılırsa, o spesifikasyona göre yazılan herhangi bir sunucuda çalışacaktır.

WSGI uygulamaları (WSGI uyumlu anlamına gelir) yığın olarak istiflenebilir. Yığının ortasındakiler ara yazılım olarak adlandırılır ve WSGI arayüzünün, uygulamasının ve sunucunun her iki tarafını da uygulamalıdır. Üstündeki uygulama için bir sunucu gibi davranacak ve uygulama (veya sunucu) için bir uygulama olarak aşağıdaki gibi davranacaktır.

Bir WSGI sunucusu (WSGI uyumlu anlamına gelir) yalnızca istemciden isteği alır, uygulamaya iletir ve ardından uygulama tarafından döndürülen yanıtı istemciye gönderir. Başka hiçbir şey yapmaz. Tüm komplike ayrıntılar uygulama veya ara yazılım tarafından sağlanmalıdır.

Uygulamaları framework veya araç kitleri üzerine inşa etmek için WSGI spesifikasyonunu öğrenmek gerekli değildir. Ara katman yazılımını kullanmak için, framework zaten entegre edilmemişse veya framework, olmayanları entegre etmek için bir tür sarmalayıcı sağlamıyorsa, bunları uygulama veya framework nasıl yığınlayacağına dair minimum bir anlayışa sahip olmalıdır.

Python 2.5 ve sonrası, bir WSGI sunucusuyla birlikte gelir. 2.4 ve öncesi için ise ayrıca kurulabilir. Üretim kodu için mod_wsgi ile Apache gibi endüstride kanıtlanmış bir standart kullanılır.