taskmaster

Sagteware kiekie:
taskmaster
Sagteware besonderhede:
Weergawe: 0.8.1
Upload datum: 14 Apr 15
Ontwikkelaar: David Cramer
Lisensie: Gratis
Populariteit: 2

Rating: nan/5 (Total Votes: 0)

drywer is 'n eenvoudige versprei tou ontwerp vir die hantering van groot getalle van een-off take.
Ons het hierdie by Disqus gereelde te hanteer, maar ongewoon take soos "migreer hierdie inligting aan 'n nuwe skema".
Hoekom?
Jy mag dalk vra, "Hoekom nie Seldery gebruik?". Wel, die antwoord is eenvoudig dat normale toustaan ​​vereis (nie letterlik nie, maar dit wil pynlike sonder wees) wat jy al die take te buffer in 'n sentrale plek. Dit word 'n probleem wanneer jy 'n groot bedrag van take, veral wanneer dit bevat 'n groot hoeveelheid van die data.
Stel jou voor jy het 1000000000 take, elke gewig in by 5k. Dis, ongecomprimeerd, ten minste 4 terabyte van die stoor vereis net dat sowat hou, en kry jy baie min.
Leermeester aan die ander kant is ontwerp om 'n resumable Iterator te neem, en net trek in 'n maksimum aantal poste op 'n tyd (met behulp van standaard Python Queue's). Dit verseker 'n konstante herinnering patroon wat lineêr kan skaal.
Gebruik
Skep 'n Iterator en terugbel:
invoer socket
# Ons moet ** verseker verstek timeout ** is nie stel of ewekansige kak sal die fan getref.
socket.setdefaulttimeout (Geen)
# Drywer / example.py
def get_jobs (laaste = 0):
& Nbsp; # verlede sou gestuur word indien die staat hervat
& Nbsp; # uit 'n vorige lopie
& Nbsp; want Ek in xrange (laaste, 100,000,000):
& Nbsp; # werkgeleenthede opgelewer moet serializeable met piekel wees
& Nbsp; opbrengs i
def handle_job (i):
& Nbsp; # Hierdie ** moet ** idempotente word, as die hervatting van die proses kan 'n werk uit te voer
& Nbsp; # wat reeds hardloop
& Nbsp; druk "Got% r!" % I
Kuit 'n meester:
& Nbsp; tm-meester taskmaster.example
Kuit 'n slaaf:
& Nbsp; tm-slaaf taskmaster.example
Of kuit 8 slawe (elk met 'n threadpool):
& Nbsp; tm-kuit taskmaster.example 8
Moenie soos die magiese funksie ontdek meester / slaaf? Spesifiseer jou eie teikens:
& Nbsp; tm-meester taskmaster.example: get_jobs $ tm-slaaf taskmaster.example: handle_job

Nota:
Alle argumente is opsioneel, en sal die standaard te localhost met geen auth sleutel

Vereistes :.

  • Python

Ander sagteware ontwikkelaar David Cramer

mock-django
mock-django

14 Apr 15

nose-bleed
nose-bleed

14 Apr 15

sentry-github
sentry-github

20 Feb 15

nydus-django
nydus-django

14 Apr 15

Kommentaar te taskmaster

Kommentaar nie gevind
Kommentaar te lewer
Draai op die foto!