django-parallelized_querysets

Software screenshot:
django-parallelized_querysets
Software informatie:
Versie: 0.0.4
Upload datum: 20 Feb 15
Ontwikkelaar: Thomas Pelletier
Licentie: Gratis
Populariteit: 0

Rating: 4.0/5 (Total Votes: 1)

django-parallelized_querysets is een Django app om grote Django QuerySets behandelen door het verspreiden van hun executie op meerdere cores en het houden van het geheugengebruik laag.
installatie
pip django-parallelized_querysets installeren
Gebruik
parallelized_queryset (queryset, processen = Geen, functie = Geen)
Verwerk de gegeven queryset en het resultaat terug te keren als een lijst.
proceses
Aantal processen te creëren. Standaard het nummer geretourneerd door multiprocessing.cpu_count ().
functie
Breng een functie het elk resultaat. Heeft geen functie zijn standaard van toepassing. Het eerste argument is het proces dat wordt noemde het, en de tweede is de rij.
U kunt ook langs twee haken (de functie die wordt uitgevoerd door het proces op bepaalde tijden):
init_hook
Geef het een functie waarbij het proces als argument en het zal op zodra het is gecreëerd worden uitgevoerd.
end_hook
Geef het een functie waarbij het proces als argument en het zal worden uitgevoerd vlak voordat het proces wordt afgesloten. Als retourneert een niet-Geen waarde, wordt deze toegevoegd aan de resultaten wachtrij.
& Nbsp; Note
& Nbsp; Telkens wanneer uw functie geeft Geen, de waarde zal niet in de resulterende lijst.
& Nbsp; Note
& Nbsp; De volgorde in de QuerySet zal niet worden gerespecteerd!
Voorbeeld
Terug alle artikel objecten:
>>> Van parallelized_querysets import parallelized_queryset
>>> Qs = Article.objects.all ()
>>> Parallelized_queryset (QS)
Voeg alle artikel objecten om een ​​Herverdeeld index (ervan uitgaande dat artikel heeft een append_to_redis methode):
>>> Van parallelized_querysets import parallelized_queryset
>>> Qs = Article.objects.all ()
>>> Parallelized_queryset (qs, functie = lambda p, x: x.append_to_redis ())
Doe hetzelfde, maar op 6 processen:
>>> Van parallelized_querysets import parallelized_queryset
>>> Qs = Article.objects.all ()
>>> Parallelized_queryset (qs, processen = 6,
& Nbsp; functie = lambda p, x: x.append_to_redis ())
parallelized_multiple_querysets (QuerySets, processen = Geen, functie = Geen)
. Zelfde als parallelized_queryset maar QuerySets is een lijst van QuerySets

Eisen

  • Python
  • Django

Reacties op django-parallelized_querysets

Reacties niet gevonden
Commentaar toe te voegen
Zet op de beelden!