Dal Web ho capito che WSGI è un CGI per lo sviluppo/framework web Python. FCGI sembra essere un gateway più generalizzato per una varietà di lingue. Non so la differenza di prestazioni tra i due in riferimento al linguaggio python e C/++.C'è una differenza di velocità tra WSGI e FCGI?
risposta
Corretto, WSGI è una definizione API programmatica Python e FASTCGI è una definizione di protocollo del filo del socket agnostica del linguaggio. In effetti sono a livelli diversi con WSGI come livello superiore. In altre parole, si può implementare WSGI su qualcosa che è successo usare FASTCGI per comunicare con un server web, ma non viceversa.
In generale, FASTCGI essendo un protocollo di socket socket significa che è sempre necessario un certo tipo di interfaccia programmatica per utilizzarlo. Per Python una tale opzione è WSGI. Dato che FASTCGI è solo un mezzo per un fine, non si può davvero confrontare le sue prestazioni a WSGI in quel caso perché WSGI non è un protocollo di socket socket paragonabile, ma un utente di FASTCGI stesso.
Si potrebbe provare a confrontare le prestazioni di interfacce di linguaggio diverse su FASTCGI, ma in generale è di per sé privo di significato in quanto il livello di rete inferiore e la gestione delle richieste del server non sono il collo di bottiglia. Invece il codice dell'applicazione e il database saranno.
Sono due cose diverse. WSGI è un'interfaccia specifica di Python per la scrittura di applicazioni Web. Esistono wrapper per qualsiasi protocollo del server Web per fornire l'interfaccia WSGI. FastGCI (FCGI) è uno di questi protocolli di server web. Quindi, WSGI è un livello di astrazione, mentre CGI/FastCGI/mod_python sono il modo in cui i server web effettivi parlano all'applicazione. Alcuni codici devono tradurre l'interfaccia nativa in WSGI (c'è un modulo CGI in wsgiref
, c'è flup
per FastCGI, ecc.). C'è anche mod_wsgi per Apache, che esegue la traduzione direttamente in un modulo Apache, quindi non è necessario alcun wrapper Python.
- 1. Differenza tra rete/http e rete/http/fcgi in Golang
- 2. Qual è la differenza tra protocollo uwsgi e protocollo wsgi?
- 3. differenza di velocità di elaborazione tra classe CSS e ID
- 4. Rails 3 e FCGI?
- 5. Differenza tra Scala REPL e Clojure REPL - compilare velocità
- 6. differenza di velocità nel fare una tabella
- 7. Confronto di velocità tra Chameleon e Jinja2
- 8. Differenza tra FastCgiExternalServer e FastCgiServer in Apache FastCGI PHP?
- 9. Differenza tra il throttling e il debouncing di una funzione
- 10. Differenza tra una "coroutine" e una "discussione"?
- 11. Differenza di velocità per la concatenazione di una linea singola
- 12. Qual è la differenza di velocità tra il disegno con html5 canvas e html e javascript?
- 13. Qualche differenza tra SDL_HWSURFACE e SDL_SWSURFACE in termini di velocità e prestazioni?
- 14. Differenza tra Velocity e AppFabric
- 15. Perché c'è una tale differenza di velocità tra il loop di Clojure ei metodi iterate
- 16. C'è qualche differenza di velocità di caricamento tra la pagina e la finestra in WPF?
- 17. Quanto è grande la differenza di velocità tra XPathNavigator e XmlReader, davvero?
- 18. differenza tra pty e una pipe
- 19. C'è una differenza tra DictionarySectionHandler e NameValueSectionHandler?
- 20. C'è una differenza tra gluLookAt() e glFrustum()?
- 21. Javascript: differenza tra una frase e un'espressione?
- 22. Differenza tra caricare una classe e istanziarla
- 23. Esiste una differenza tra log4net.Config.BasicConfigurator.Configure() e log4net.Config.XmlConfigurator.Configure()?
- 24. C'è una differenza tra MsgBox e MessageBox.Show?
- 25. Esiste una differenza tra System.Windows.Clipboard e System.Windows.Forms.Clipboard?
- 26. Differenza tra le specifiche e una politica?
- 27. differenza di velocità tra l'utilizzo int e unsigned int miscelato con doppie
- 28. C'è una differenza tra RPC e IPC?
- 29. C'è una differenza tra (function() {...}()); e (function() {...})() ;?
- 30. C'è una differenza tra readonly e {get; }
Penso che sia significativo chiedersi quale sia la differenza di orario tra un'app fcgi che risponde a una richiesta e un'app wsgi che risponde alla richiesta. Poiché fcgi e wsgi sono due modi diversi per interfacciare un linguaggio di programmazione a una richiesta web, fanno cose molto simili. – Ninjaxor