Waitress

Software screenshot:
Waitress
Dettagli del software:
Versione: 0.8.5
Data di caricamento: 14 Apr 15
Sviluppatore: Chris McDonough
Licenza: Libero
Popolarità: 2

Rating: nan/5 (Total Votes: 0)

Waitress è progetto vuole essere un puro Python WSGI server di produzione di qualità con prestazioni molto accettabile. & Nbsp; Non ha dipendenze, tranne quelli che vivono nella libreria standard di Python. Funziona su CPython su Unix e Windows sotto Python 2.6+ e Python 3.2. E 'noto anche per funzionare su PyPy 1.6.0 su UNIX. Supporta HTTP / 1.0 e HTTP / 1.1.
Per ulteriori informazioni, consultare il "docs" directory del pacchetto Cameriera o http://docs.pylonsproject.org/projects/waitress/en/latest/.

What è nuovo in questa versione:.

  • Fix corridore importazioni multisegmento in alcune Python 2 revisioni (vedi https://github.com/Pylons/waitress/pull/34)
  • Per la compatibilità, WSGIServer è ora un alias di TcpWSGIServer. La firma di BaseWSGIServer è ora compatibile con WSGIServer pre-0.8.4.

Cosa c'è di nuovo nella versione 0.8.1:

  • Una richiesta concorrenza brown-bag bug impedito. Una richiesta lento bloccherebbe successivamente le risposte delle richieste successive fino la risposta della richiesta lento è stato completamente generato. Ciò è dovuto a un & quot; compito serratura & quot; essere dichiarato come un attributo di classe piuttosto che come un attributo istanza su HttpChannel. Inoltre abbiamo preso la possibilità di passare un altro Serratura chiamato & quot; outbuf bloccare & quot; l'istanza di canale piuttosto che la classe. Vedere https://github.com/Pylons/waitress/pull/1.

Cosa c'è di nuovo in versione 0.8:

  • Sostenere il protocollo WSGI wsgi.file_wrapper secondo http: / /www.python.org/dev/peps/pep-0333/#optional-platform-specific-file-handling. Ecco un esempio di utilizzo:
  • import os
  • qui = os.path.dirname (os.path.abspath (__ di file __))
  • def myapp (environ, start_response):
  • f = open (os.path.join (qui, 'MyPhoto.jpg'), 'rb')
  • headers = [('Content-Type', 'image / jpeg')]
  • start_response (
  • '200 OK',
  • intestazioni
  • ritorno environ ['wsgi.file_wrapper'] (f, 32768)
  • La firma del costruttore di file wrapper è (filelike_object, BLOCK_SIZE). Entrambi gli argomenti devono essere passati come posizionali (non di parole chiave) argomenti. Il risultato di creare un file involucro deve essere restituito come app_iter da un'applicazione WSGI.
  • L'oggetto passato come filelike_object per l'involucro deve essere un oggetto simile a file che supporta almeno il metodo read () e il metodo read () deve supportare un argomento dimensione hint opzionale. Esso dovrebbe sostenere la cercano () e tell () metodi. In caso contrario, viene utilizzato l'iterazione normale sull'oggetto filelike utilizzando il BLOCK_SIZE fornito (e la copia è fatto, negando qualsiasi vantaggio del file involucro). Si dovrebbe sostenere un metodo close ().
  • L'argomento BLOCK_SIZE specificato al costruttore involucro file sarà utilizzato solo quando la filelike_object non supporta cerca e / o dire metodi. Cameriera deve utilizzare iterazione normale per servire il file in questo caso degenere (secondo le specifiche WSGI), e questa dimensione del blocco sarà usato come dimensione di iterazione chunk. L'argomento BLOCK_SIZE è facoltativo; se non viene passato, viene utilizzato un value``32768`` predefinita.
  • Waitress fisserà un header Content-Length per conto di un'applicazione quando un wrapper file con un oggetto sufficientemente filelike viene utilizzata se l'applicazione non è già impostato uno.
  • Il meccanismo che gestisce un file involucro momento non fare niente di particolarmente speciale con le chiamate di sistema di fantasia (non utilizza sendfile per esempio); utilizzando attualmente impedisce solo il sistema da dover copiare i dati in un buffer temporaneo per inviarlo al client. No copia dei dati viene effettuata quando un'applicazione WSGI restituisce un wrapper di file che avvolge un oggetto sufficientemente filelike. Può fare qualcosa di più elaborato in futuro.

Cosa c'è di nuovo nella versione 0.6.1:

  • Rimuovi chiamata prestazioni minando alla pull_trigger nel canale di Metodo write_soon aggiunto erroneamente in 0.6.

Cosa c'è di nuovo in versione 0.5:

  • Codifica Fix PATH_INFO / decodifica in Python 3 (ex PEP 333, tunnel byte-a-unicode-as-latin-1-dopo-toglie la quotatura).

Requisiti :

  • Python

Altri software di sviluppo Chris McDonough

pyramid_viewgroup
pyramid_viewgroup

15 Apr 15

pyramid_handlers
pyramid_handlers

14 Apr 15

superlance
superlance

20 Feb 15

Commenti a Waitress

I commenti non trovato
Aggiungi commento
Accendere le immagini!