<div dir="ltr"><div><div><div><div>Opa,<br><br></div>meus cents =)<br><br></div>Não sei aonde sua aplicação vai rodar, mas Starman ( <a href="https://metacpan.org/module/Starman">https://metacpan.org/module/Starman</a> ) suporta HotDeploy ( suporte ao Server::Starter : <a href="https://metacpan.org/module/Server::Starter">https://metacpan.org/module/Server::Starter</a> ). Talvez seja uma opção =D<br>
<br></div><div>Claro que isso não é o que você perguntou no início, mas conforme citado acima é uma forma teoricamente mais segura de fazer o que eu entendi que você gostaria, na minha opinião,<br></div><div><br></div>abs.<br>
</div>Japa<br></div><div class="gmail_extra"><br><br><div class="gmail_quote">Em 26 de julho de 2013 11:15, Marcio Ferreira <span dir="ltr"><<a href="mailto:marciodesouzaferreira@gmail.com" target="_blank">marciodesouzaferreira@gmail.com</a>></span> escreveu:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Uma coisa pra se atentar é "esquentar" o novo node antes de subir mais um com a atualização.<div>
E se houver um percentual na carga do balancer, começar aos poucos a redirecionar a carga. Isso claro, se não for um "hotfix".</div>
<div><br></div><div>Só um adendo - por saber que você trabalha na EV, presumo que você esteja lidando com e-commerce -, um bom horário pra esse tipo de manutenção é por volta das 6 horas da manhã, onde o volume de compras é mais baixo. Mas quando seu deploy "reload" continuo estiver redondo, faça a qualquer horário do dia! Isso é sinal de qualidade do seu sistema. =)</div>

</div><div class="gmail_extra"><br><br><div class="gmail_quote">Em 26 de julho de 2013 10:53, Blabos de Blebe <span dir="ltr"><<a href="mailto:blabos@gmail.com" target="_blank">blabos@gmail.com</a>></span> escreveu:<div>
<div class="h5"><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><span style="font-family:arial,sans-serif;font-size:13px">> Talvez você queira da uma olhada no Module::Refresh usado como um dos plugins do Devel::REPL.</span><div style="font-family:arial,sans-serif;font-size:13px">



</div><div><span style="font-family:arial,sans-serif;font-size:13px"><br></span></div></div><div><span style="font-family:arial,sans-serif;font-size:13px">Exato.</span></div><div><span style="font-family:arial,sans-serif;font-size:13px"><br>



</span></div><div><span style="font-family:arial,sans-serif;font-size:13px">Eu tava justamente olhando o Module::Refresh, especificamente nas subs unload_module e unload_subs, que aparentemente faz o que eu quero. Limpa o %INC e depois a tabela de símbolos.</span></div>



<div><span style="font-family:arial,sans-serif;font-size:13px"><br></span></div><div><span style="font-family:arial,sans-serif;font-size:13px">Na documentação do módulo </span>Class::Refresh há algumas considerações sobre Moose também, que eu não sei se vão se aplicar ao meu caso.</div>



<div><br></div><div>Sim, dá pra fazer reload sem downtime conforme apontado pelo Cron e Márcio e pragmaticamente, me parece ser a alternativa mais sã mesmo.</div><div><br></div><div>Agora é mais curiosidade científica, pois por completude, se a gente pode fazer load dinâmico, eu gostaria de ter um unload dinâmico.</div>



<div><br></div><div>[]'s</div></div><div><div><div class="gmail_extra"><br><br><div class="gmail_quote">2013/7/26 Gabriel Andrade <span dir="ltr"><<a href="mailto:gabiruh@gmail.com" target="_blank">gabiruh@gmail.com</a>></span><br>



<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><br>
On Jul 26, 2013, at 9:10 AM, Blabos de Blebe <<a href="mailto:blabos@gmail.com" target="_blank">blabos@gmail.com</a>> wrote:<br>
><br>
> Vocês poderiam apontar outros módulos que lidam com esse problema de forma segura, ou documentação mais específica onde eu possa entender melhor o processo?<br>
<br>
</div>Talvez você queira da uma olhada no Module::Refresh usado como um dos plugins do Devel::REPL.<br>
<div><div><br>
<br>
=begin disclaimer<br>
   Sao Paulo Perl Mongers: <a href="http://sao-paulo.pm.org/" target="_blank">http://sao-paulo.pm.org/</a><br>
 SaoPaulo-pm mailing list: <a href="mailto:SaoPaulo-pm@pm.org" target="_blank">SaoPaulo-pm@pm.org</a><br>
 L<<a href="http://mail.pm.org/mailman/listinfo/saopaulo-pm" target="_blank">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a>><br>
=end disclaimer<br>
</div></div></blockquote></div><br></div>
</div></div><br>=begin disclaimer<br>
   Sao Paulo Perl Mongers: <a href="http://sao-paulo.pm.org/" target="_blank">http://sao-paulo.pm.org/</a><br>
 SaoPaulo-pm mailing list: <a href="mailto:SaoPaulo-pm@pm.org" target="_blank">SaoPaulo-pm@pm.org</a><br>
 L<<a href="http://mail.pm.org/mailman/listinfo/saopaulo-pm" target="_blank">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a>><br>
=end disclaimer<br>
<br></blockquote></div></div></div><br></div>
<br>=begin disclaimer<br>
   Sao Paulo Perl Mongers: <a href="http://sao-paulo.pm.org/" target="_blank">http://sao-paulo.pm.org/</a><br>
 SaoPaulo-pm mailing list: <a href="mailto:SaoPaulo-pm@pm.org">SaoPaulo-pm@pm.org</a><br>
 L<<a href="http://mail.pm.org/mailman/listinfo/saopaulo-pm" target="_blank">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a>><br>
=end disclaimer<br>
<br></blockquote></div><br></div>