Horário do servidor

Horário Universal vs Local

Se você prestar atenção no horário do servidor vai notar que ele está sempre adiantado 3 horas (2 no horário de verão - DST: Daylight Saving Time). Isso se deve ao fato dos servidores da Getup rodarem apenas no horário UTC - Tempo Universal Coordenado.

Este é o horário base para os horários locais, ou seja, o horário 0 (zero). No Brasil, por exemplo, nosso horário é UTC -03:00, então estamos sempre 3 horas atrás do horário universal.

Quando UTC for 22:30, então no Brasil será 22:30 - 03:00 = 19:30h. Da mesma forma, quando no Brasil for 14:15, então em UTC será 14:15 + 03:00 = 17:15h.

Como trabalhar com horários

A estratégia recomendada para trabalhar com horários, independente de linguagem, serviço ou plataforma, é sempre armazenar e tratar os horários em UTC. Converta para horário local apenas quando for mostrar para o usuário.

Cada linguagem e banco de dados possui sua forma de tratar a conversão entre UTC e horário local:

PHPhttp://stackoverflow.com/questions/5806526/php-utc-to-local-time

Pythonhttp://stackoverflow.com/questions/4770297/python-convert-utc-datetime-string-to-local-datetime

Ruby/Railshttp://stackoverflow.com/questions/5300493/convert-utc-to-local-time-in-rails-3

Nodejs/Javascripthttp://www.digitoffee.com/programming/get-local-time-utc-using-moment-js/94/

Javahttp://stackoverflow.com/questions/6049207/convert-utc-to-current-locale-time

MySQL: https://getup.zendesk.com/entries/62418705-Timezone-do-MySQL

PostgreSQL: http://www.postgresonline.com/journal/archives/257-Working-with-Timezones.html

No site http://www.timeanddate.com/time/aboututc.html encontra-se um pouco da história e nomenclatura envolvendo o assunto.

A wikipedia possui diversos artigos interessantes:

http://pt.wikipedia.org/wiki/UTC+0

http://pt.wikipedia.org/wiki/Fuso_horário

http://pt.wikipedia.org/wiki/UTC-3

 

Tem mais dúvidas? Envie uma solicitação

0 Comentários

Por favor, entre para comentar.
Powered by Zendesk