Unicorn è un server HTTP per applicazioni a cremagliera progettate per servire solo clienti veloci a bassa latenza, connessioni ad alta larghezza di banda e approfittare delle funzionalità di Unix kernel / Unix-like. Clienti lenti dovrebbero essere serviti solo inserendo un proxy inverso in grado di compensare pienamente sia la domanda e la risposta tra Unicorn e clients.Features lenta a caratteristiche glanceKey includono il supporto per Rack, il supporto per l'architettura Unix, la compatibilità con Ruby 1.8 o superiore , supporto Rubinius, gestione dei processi, il bilanciamento del carico tramite il kernel Linux, supporta entrambe le applicazioni thread-safe e non-thread-safe, supporta tutte le applicazioni rack, così come nginx stile aggiornamenti binari che consentono di aggiornare il programma e tutti i suoi componenti senza perdere clienti.
Inoltre, il software include after_fork e before_fork ganci per le applicazioni che hanno particolari esigenze, soprattutto quando si maneggiano i processi biforcuta, copy-on-write gestione della memoria compatibile per un basso consumo di RAM, built-in Ruby DSL per la configurazione del server, capacità di decodificare i trasferimenti divisi in blocchi on-the-fly, e il supporto per l'ascolto di più interfacce, tra cui UNIX sockets.Getting iniziato con UnicornThe software comprende un'estensione C, il che significa che sarà necessario installare un compilatore C sul sistema GNU / Linux per compilarlo, oltre alle necessarie librerie di sviluppo di Ruby e intestazioni. E 'stato testato con successo con le architetture a 32-bit e set di istruzioni a 64-bit.
Per installare il server HTTP Unicorn sul computer, aprire un emulatore di terminale ed eseguire il & ldquo; gem install unicorno & rdquo; Comando, senza virgolette. L'ultimo codice sorgente del programma può essere clonato da Git o scaricato da Softoware, gratuitamente, come archivio una fonte universale.
Per usarlo per i non-rotaie a cremagliera applicazioni, è necessario utilizzare il & lsquo; unicorno & rsquo; il comando, in caso contrario, assicurarsi di utilizzare le & lsquo; unicorn_rails & rsquo; Comando per le applicazioni che sono state scritte in Ruby on Rails. La documentazione dettagliata può essere trovata sul progetto & rsquo; s homepage (vedi link sotto)
Cosa c'è di nuovo in questa versione:
Cosa c'è di nuovo nella versione 4.8.2:
- Chiudiamo SELF_PIPE nel lavoratore immediatamente, ma il segnale i gestori non si ottiene immediatamente l'installazione. Quindi evitare che i lavoratori erroring causa di SELF_PIPE valido.
Cosa c'è di nuovo nella versione 4.8.1:
- Fix gare / gestione degli errori in gestore SIGQUIT lavoratore
Cosa c'è di nuovo nella versione 4.8.0:
- Il presente comunicato stampa contiene abbastanza importanti meccanismi interni di master- to-worker notifiche. Il processo principale non invia segnali ai lavoratori per la maggior parte delle attività. Questo funziona intorno alcuni problemi di compatibilità con alcune versioni del & quot; pg & quot; gemma (e potenzialmente qualsiasi altro codice che non può gestire EINTR correttamente). Un ulteriore vantaggio è che aiuta anche i lavoratori randagi notare una rara, la morte inaspettata maestro più facilmente. I lavoratori continuano a (e saranno sempre) accettano segnali esistenti per la compatibilità con gli strumenti / scripts che possono segnalare i lavoratori.
- file PID sono sempre scritti presto (anche in aggiornamento) per evitare di rompere strani setup di monitoraggio che utilizzano i file PID. Tenete a mente che abbiamo sempre sconsigliato di monitoraggio basato su file PID come sono fragili.
- Ora evitare bubbling IOError per l'applicazione Rack su disconnette prematuri client quando lo streaming il corpo di ingresso. Questo di solito non è un problema con nginx, ma può essere in alcune configurazioni LAN senza nginx).
- GNUmakefile: aggiungere & quot; controllare & quot; obiettivo per l'esecuzione di tutte le prove. & Quot; controllare & quot; rotola fuori le dita di utenti che hanno familiarità con GNU Automake più facilmente. Il & quot; test-all & quot; bersaglio è conservato per la compatibilità.
Cosa c'è di nuovo nella versione 4.7.0:
- Supporto SO_REUSEPORT su nuovi ascoltatori (: reuseport)
- unicorno è ora GPLv2-o-tardi e Ruby 1.8 con licenza (invece di GPLv2-only, GPLv3-only, e Ruby 1.8-licenza)
- USR2 reindirizzamenti fissato per Ruby 1.8.6 (rotto dal 4.1.0)
- Unicorn (1) e unicorn_rails (1) rafforza intero valido per -p / - port
- tentativo di rinominare il file PID quando possibile (su USR2)
- soluzione riaprire questioni atomicità per stdio vs non stdio
- migliorare la gestione degli errori di socket client-triggerable
Cosa c'è di nuovo nella versione 4.6.3:
- Fix opzione --no-default-middleware.
Cosa c'è di nuovo nella versione 4.6.2:
- Questa release corregge un bug in Unicorn :: HttpParser #filter_body che ha colpito alcune configurazioni di Rainbows! C'è anche una riduzione minore dimensione del DSO.
Cosa c'è di nuovo nella versione 4.6.1:
- Unicorn :: :: Const UNICORN_VERSION è ora automatica -Generata da GIT-VERSION-GEN e sempre corretto. Ripuliture minori per dirottamento.
Cosa c'è di nuovo nella versione 4.6.0:
- Questa pre-release aggiunge il supporto per il dirottamento Rack 1.5 utenti. Consultare la documentazione Rack per ulteriori informazioni su dirottamento. C'è anche una nuova opzione / -N --no-default-middleware per il 'comando `unicorno ignorare RACK_ENV entro unicorno grazie a Lin Jen-Shin.
- Ci sono solo aggiornamenti della documentazione e di test-portabilità dal 4.6.0pre1, nessuna modifica del codice.
I commenti non trovato