[Plone-IT] sleep in una browser view
Yuri
yurj a alfa.it
Lun 25 Nov 2013 15:02:08 UTC
Il 25/11/2013 15:05, Davide Moro ha scritto:
> Il 25/11/2013 14:49, Yuri ha scritto:
>> Ciao,
>>
>> forse mi sono spiegato male. Io, con un crontab, chiamo una mia
>> browser view. Questa browser view chiama un'altro server non gestito
>> da me ma nella stessa rete, per ricavare dei dati. La mia browser
>> view cicla su una lista, di circa 700 elementi, e per ogni valore fa
>> una chiamata. Volevo evitare di sovraccaricare l'altro server in quei
>> pochi minuti, e invece fare una chiamata ogni X secondi in modo da
>> non avere un picco di richieste.
>>
>> Spero di esser stato più chiaro :-P
>
> Ciao Yuri,
>
> la sleep ci può stare in questo caso.
Il problema è che ho un thread occupato per mezz'ora circa nel fare solo
quello, di cui 20 minuti di sleep.
> In alcuni casi si può decidere di delegare questo compito direttamente
> a uno zeo client dedicato, fuori dal bilanciatore.
è la cosa migliore, in effetti. Vado per questa soluzione.
La mia domanda originale è comunque se uno sleep all'interno del codice
Plone può creare problemi, mi par di aver capito di no, nel senso che al
massimo tiene un thread occupato all'interno del client.
> Puoi anche mettere un preambolo nella vista che fa terminare la
> chiamata con un nulla di fatto se ti accorgi che una richiesta simile
> è "running", in modo che non ci siano sovrapposizioni.
> Per tale scopo puoi anche solo controllare se una certa property è
> true o false o metodo simile.
>
> Quando si parla di operazioni batch piuttosto lunghe consiglio di
> mettere dei file di log chiari che identifichino bene quando parte una
> procedura, quando finisce, se ci sono stati errori, un po' per tutto.
> Ti sarà molto utile nel debugging.
>
> Ciao,
>
> davide
>
Maggiori informazioni sulla lista
Plone-IT