Ciao a tutti, ho appena fatto il commit per il supporto al signal
framework di uWSGI
(The uWSGI project — uWSGI 2.0 documentation) per l’ambiente
ruby/rack.
Per chi non lo sapesse uWSGI e’ una piattaforma di deploy estremamente
avanzata
di largo uso da un paio d’anni in ambienti Python e Perl, e a cui di
recente abbiamo aggiunto anche il supporto per Ruby.
Il signal framework permette di poter gestire eventi esterni (timer,
cron, modifiche al filesystem, eventi custom) direttamente dal proprio
applicativo senza l’utilizzo di software esterno (non serve neanche il
demone cron).
Il “problema” principale di questa API e’ che si pone a un livello
estremamente basso che raramente si sposa bene con l’eleganza di un
codice
“agile” (guardatevi l’esempio in
The uWSGI project — uWSGI 2.0 documentation). Di conseguenza per
python sono stati sviluppati una serie di decoratori:
http://projects.unbit.it/uwsgi/wiki/Decorators
l’obiettivo e’ quindi avere un qualcosa di simile anche in ruby (ma
sottoforma di DSL). Ho pensato a una roba del genere:
timer 3 do
puts “sono passati 3 secondi”
end
file_modified ‘/tmp’ do
puts “/tmp e’ stata modificata”
end
ma visto che non sono certo un maestro di eleganza (soprattutto in
ambiente ruby) sono aperto a qualsiasi consiglio
Un grazie in anticipo a chiunque voglia smanettare/aiutare con il
progetto (il plugin ruby/rack di uWSGI e’ davvero parecchio indietro con
lo sviluppo rispetto agli altri)
–
Roberto De Ioris
http://unbit.it