django-scaler è un app Django di degradare grazia sostituendo automaticamente le pagine pesanti con pagine statiche, mentre un server sta prendendo ceppo.
Installazione
1. Installare o aggiungere django-scaler al percorso di Python.
2. Aggiungere scaler all'impostazione INSTALLED_APPS.
3. Aggiungere scaler.middleware.ScalerMiddleware alla parte superiore del vostro ambiente MIDDLEWARE_CLASSES.
4. Aggiungi (r '^ scaler /', includere ('scaler.urls')) a urlpatterns.
Descrizione
I server possono a volte ottenere sovraccarico a causa di una serie di motivi. Quando ciò accade non si desidera richieste costosi per far cadere l'intero sito. Il sito deve reindirizzare le richieste costose a una pagina "Server occupato" mentre il server è sotto carico, e quindi automaticamente rimuovere i reindirizzamenti una volta che il carico è scesa abbastanza.
indirizzi django-scaler questa situazione in due modi. In primo luogo, si sa che richiede per reindirizzare da solo. In secondo luogo, può essere incaricato di reindirizzare le richieste N più costosi. Memorizza i dati tempi di risposta nella memoria cache le consente di prendere queste decisioni.
Utilizzo
Incollato da test_settings.py:
DJANGO_SCALER = {
& Nbsp; 'server_busy_url_name': 'server occupato',
& Nbsp; # Quante tempi di risposta da considerare per un URL. Un piccolo valore significa lento
& Nbsp; i tempi di risposta # sono rapidamente dato seguito, ma può essere troppo aggressivo.
& Nbsp; # Un grande valore, un URL deve essere lenta per un certo numero di richieste prima
& Nbsp; # è agito su. L'impostazione predefinita è 100.
& Nbsp; 'trend_size': 10,
& Nbsp; # Quanto più lento rispetto alla media la tendenza deve essere prima di calci di reindirizzamento
& Nbsp;. # A Il valore di default è 4.0.
& Nbsp; 'slow_threshold': 2.0,
& Nbsp; # Quanti secondi per mantenere il reindirizzamento di un URL prima di servire normalmente. Il
& Nbsp; # predefinito è 60.
& Nbsp; 'redirect_for': 10,
& Nbsp; # Una funzione che restituisce il numero degli URL più lenti devono essere reindirizzato.
& Nbsp; # A seconda del sito, i dati e il carico sul server questo può essere un grande
& Nbsp; il numero #. Questo permette processi esterni ad incaricare la middleware per
& Nbsp; # redirect. Il valore predefinito è 0.
& Nbsp; 'redirect_n_slowest_function': lambda: 0,
& Nbsp; # Una funzione che restituisce la percentuale degli URL più lenti devono essere
& Nbsp; # reindirizzato. A seconda del sito, dati e carico sul server questo può
& Nbsp; # approccio 100. Il valore predefinito è 0.
& Nbsp; 'redirect_percentage_slowest_function': lambda: 0,
& Nbsp; # Una funzione che restituisce un elenco di espressioni regolari. URL che corrispondono ai regex sono
& Nbsp; # reindirizzato. Ogni regex è una semplice stringa. Non prefisso con r ''. Il
& Nbsp; # predefinito è un elenco vuoto.
& Nbsp; 'redirect_regexes_function': lambda: [],
}
Cosa c'è di nuovo in questa versione:.
- Regex corrispondenza URL per il reindirizzamento esplicito
- Percentuale più lento reindirizzamento esplicito.
Requisiti :
- Python
- Django
I commenti non trovato