2015 vai ter mais 1 segundo e isso será perigoso para a Internet

51 Comentários

No próximo dia 30 de Junho o ano de 2015 crescerá um segundo! Às 23:59:59 o tempo avançará de forma diferente, passado para as 23:59:60 antes de ser meia noite do dia 01 de Julho.

Esta diferença, que muitos podem considerar mínima, terá um impacto grande na Internet e nos serviços que nela existem. A razão? Muitos sistemas podem não estar preparados para este segundo a mais!

relogio_1

A razão para a contagem do tempo ser diferente no próximo dia 30 de Junho está nas mãos do IERS (International Earth Rotation and Reference Systems Service), entidade organização responsável por manter padrões de referência e tempo globais.

De forma não periódica esta entidade controla os parâmetros do tempo no planeta e acerta os relógios com base na rotação da terra, garantindo assim que os padrões do tempo se mantêm acertados com o planeta. A decisão de hoje resolveu adicionar um segundo a 2015.

Mas a adição de um simples segundo ao ano de 2015, que para qualquer pessoa pode parecer simples e inócua, poderá ter um impacto grande na Internet.

Uma vez que a maioria dos serviços na Internet depende de forma muito grande do tempo e da sincronização deste, a introdução de um simples segundo nos sistemas pode causar problemas graves e até o parar de sistemas operativos.

Não sendo esta a primeira vez que o IERS “acerta” a hora dos nossos relógios, é normal que tenham de ser controladas situações passadas e que causaram problemas.

No último acerto que existiu, em 2012, muitos serviços da Internet tiveram problemas e chegaram a parar. Sites como o Reddit, Foursquare, Yelp, LinkedIn e StumbledUpon tiveram problemas graves e estiveram parados durante algumas horas.

A razão para este problema deve-se a problemas no código dos sistemas operativos ou das aplicações de suporte que ao verem surgir este segundo adicional acabam por congelar devido a bugs ou falha de programação.

relogio_2

Mas existem formas de contornar este problema e preparar os sistemas para o segundo adicional que vai chegar no dia 30 de Junho, evitando assim problemas relacionados com o software.

Empresas como a Google estão já a preparar-se, adicionando de forma periódica alguns milissegundos aos relógios dos seus sistemas e garantindo assim que no dia 30 de Junho os seus relógios vão estar já com o segundo adicional, sem ser esperado qualquer problema.

Uma vez que esta não é a primeira vez que os softwares passam por este problema, muitos dos bugs anteriores devem estar já resolvidos, mas nada garante que não surjam novos ou que os problema anteriores estejam realmente sanados.

Resta apenas esperar pelo final do mês de Junho e ver o que acontece. O tempo vai crescer, mas provavelmente ninguém vai dar por isso. Apenas se o seu site favorito ficar fora do ar durante alguns minutos, até alguém resolver acertar novamente o relógio!

Comentários

51

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *

  1. Avatar de João
    João

    falha de programação??!!!??? wtf. Inserir milisegundos todos os dias até\para chegar ao fim do ano com um segundo a mais é que é um “martelanço” que nem o\a Thor pode esperar!!!

    1. Avatar de André Rosa
      André Rosa

      “martelanço” <3

  2. Avatar de Duarte Santos
    Duarte Santos

    Acrescentar um segundo ou milissegundos será, na prática, a mesma coisa e trará, na mesma lógica, os mesmos problemas e dessincronização. Ou não? Se não, porquê? Os sistemas informáticos só consideram até ao segundo?

    1. Avatar de João Simões
      João Simões

      Não é a mesma coisa. Aqui o problema está no facto dos sistemas validarem, e bem, dias e horas, ou seja, se está estipulado que um minuto só pode ter 60 segundos, começando a contagem em 0 (0 a 59 segundos), os sistemas efectuam as validações desta forma 9999-12-31 23:59:59.999 (ou maior resolução, dependendo do sistema, e validação de dias dependendo do mês e ano). Se alguém passar ao sistema a data 2015-06-30 23:59:60.000 é claro que tem de ser considerada inválida.

      Normalmente as aplicações usam as horas que o servidor indica, devendo este estar sincronizado com algum sistema central (interno à empresa ou o público). Se tudo estiver configurado correctamente, o que irá acontecer é o sistema avançar para 2015-07-01 00:00:00.000, mas na próxima sincronização com o serviço central, irá obter a indicação de que está adiantado 1 segundo, fazendo o sistema “atrasar-se” o que fará 1 segundo demorar 2 segundos, em termos práticos.

      Onde poderá, eventualmente, haver problemas é com aplicações realtime distribuídas, onde a sincronização dos relógios das VMs é bastante relevante para as replicações de dados. Ainda assim isto não será um problema directamente da aplicação, mas sim da forma como o relógio central resolve esta questão.

      A Google, e outros, apenas encontraram uma forma “inteligente” de prevenir que isto venha sequer a ser um possível problema, indo somando milissegundos aos relógios centrais.

      1. Avatar de JJ

        2015-06-30 23:59:60.000 não vai acontecer, nem pode acontecer, visto que os relógios sejam eles informáticos/digitais/analógicos, não tem o minuto/segundo 60, mas sim o 00.

        Assim sendo, o mais lógico será existir duas vezes o 2015-06-30 23:59:59.000. Ou a repetição de um outro segundo qualquer.

        O problema está é que se dois equipamentos que comunicam entre si, tiverem essa diferença de 1 segundo, a cada 60 segundos, podem ter falhas na comunicação.

      2. Avatar de JJ

        @João Simões… ao reler o teu comentário, verifiquei que dissemos a mesma coisa, mas segundo métricas diferentes… 🙂

  3. Avatar de AA
    AA

    Não está fácil

    1. Avatar de Tavares
      Tavares

      Na passagem do milénio também se previram “catástrofes” informáticas por causa do “000”…e nada aconteceu.As grandes empresas preparam-se atempadamente para esses “problemas”…

  4. Avatar de JJ

    Lá vão os hackers aproveitar essa situação, para mais alguns ataques…

  5. Avatar de Oscrates
    Oscrates

    Vai ser uma catástrofe como a que aconteceu no ano 2000 com o bug Y2k…

  6. Avatar de Alex
    Alex

    Não percebi qual é o grande problema dos serviços web, os servers dão sempre a hora de lá, e o segundo so deverá afectar os requests durante 29/07 23:59:59 – 30/07 00:00

    1. Avatar de Krasy
      Krasy

      não se os sistemas congelarem que é o k se teme

    2. Avatar de JJ

      O problema esta no delay que vai acontecer a nível mundial, devido ao fuso horário, a mudança não vai acontecer toda ao mesmo tempo.

      Ou seja, um serviço que exige uma validação horária, em que os dois equipamentos (servidor e computador/telemóvel) tenham a mesma hora (preparado para variações na hora devido aos fusos horarios), pode ter falhas na resposta.

      Um servidor nos EUA vai andar 1 segundo adiantado, durante final do dia 30, face ao inicio do dia 1 na Europa.

      Visto que a validação não é feita ao segundo, por ser complicado dois equipamentos estarem certos ao segundo, vai querer dizer que a cada 60 segundos o sistema vai dizer que a hora não esta certa (durante 1 segundo).

      Mas este problema fica automaticamente ultrapassado, quando todos os países do mundo tiverem passado do dia 30 de Junho para o dia 1 de Julho.

  7. Avatar de José
    José

    Será apenas nesse dia?

    1. Avatar de JJ

      Será durante o dia 29 e 30 de Junho e o dia 1 de Julho, conforme o fuso horário de cada país.

  8. Avatar de João
    João

    Oh meu Deus… Oh meu Deus!!!!
    É o fim do mundo!!!!!! Salvem as crianças primeiro.
    Os servidores só actualizam a hora se quiserem e quando quiserem. Até parece que actualmente estão todos certinhos pelo mesmo relógio. Estou é a ver o telejornal da TVI a começar 1 segundo mais tarde que o da RTP… estamos perdidos!!

    1. Avatar de Marisa Pinto

      1 segundo, quantitivamente pode ser insignificante, contudo, qualitivamente pode trazer consequeências catastróficas. Por exemplo, no lançamento de uma nave espacial, o tempo deve ser cumprido e o mais pequeno erro poderá pôr tudo a perder 🙂

    2. Avatar de JJ

      Já fiz-te o que é ficares mais 1 segundo a espera para ver o que se passou no “Casa das Meninas” da TVI? O país vai ficar maluco…

  9. Avatar de ruben machado
    ruben machado

    E que tal de, em vez acrescentarem 1 segundo (ficar 23:60), atrasam 1 para ‘contar mais tempo’? pode haver sistemas em que aquele 6 vai ser o diabo dos trabalhos.

    1. Avatar de JJ

      Não vai haver o 60! Visto que nas relógios não existe o minuto/segundo 60, mas sim o 00.

      O que vai acontecer é haver duas vezes o segundo 59.

      Dizer que vai haver a hora 23:59:60 é para facilitar o entendimento do que vai acontecer.

    2. Avatar de Pedro Simões

      Pode ler-se o seguinte na comunicação oficial do IERS:

      A positive leap second will be introduced at the end of June 2015.
      The sequence of dates of the UTC second markers will be:

      2015 June 30, 23h 59m 59s
      2015 June 30, 23h 59m 60s
      2015 July 1, 0h 0m 0s

      in http://datacenter.iers.org/web/guest/eop/-/somos/5Rgv/latest/16

      1. Avatar de JJ

        Pedro, isso é a precessão de leitura. Porque ninguém tem relógios com o minuto/segundo 60. (Salvo relógios especiais de alta precisão.)

        Por isso o que vai realmente acontecer, vai ser a repetição de um mesmo segundo no relógio. Logicamente na vida, não o tempo não se repete, e vai existir mais um segundo nesse dia, mas para o relógio simplesmente repetiu-se 1 segundo.

    3. Avatar de Tiago
      Tiago

      um dia ter exactamente a mesma hora duas vezes?! hehe tem bastantes problemas a mesma e bastante piores em alguns casos…

      1. Avatar de JJ

        Mas na pratica é isso que vai acontecer, para os relógios.

  10. Avatar de pp
    pp

    Nunca mais aparecem os ET’S

    1. Avatar de Joselito
      Joselito

      Se calhar isto já são os ETs em acção! Spoooookyyyyyyyyyyy

  11. Avatar de antunesn
    antunesn

    Mais uma situação em que a montanha vai parir um rato.
    Já quando foi o problema do ano 2000 pintavam a manta de tal forma que parecia que o mundo ia acabar…
    Isto cheira-me a uma tentativa de assustar o comum dos cidadãos para garantir mais algum lucro para os feiticeiros informáticos…
    😀

    1. Avatar de JJ

      Já viste o que é um computador de um comum cidadão ficar no passado 1 segundo a cada 60 segundos? A PC Clinic e empresas do género, deverão ter muito trabalho no dia 30 Junho e 1 Julho… isto de atrasar o relógio do PC 1 segundo, não é para qualquer um.

      1. Avatar de antunesn
        antunesn

        Xiça, até parece que nunca tiveram um computador com a hora e data errada…
        Uiiii jesus credo, os satelites vão cair todos… á espera, não, os satelites já têm mesmo de ajustar a hora todos os dias mesmo!!!

  12. Avatar de Kabindas
    Kabindas

    Se os sistemas congelarem vai ser um espetáculo, lá vou eu por umas SuperBocks no server, depois só falta mesmo são os caracois 😛

    1. Avatar de JJ

      Uns congelam… outros sobreaquecem na tentativa de realizar determinadas tarefas.

      Por isso o problema dos caracóis deverá também ficar resolvido, pondo os mesmos a “cozinhar” junto aos que sobreaquecerem…

      Assim fica a faltar mesmo o LCD 80″…

  13. Avatar de Francisco Bischoff

    NTP…

    Sempre saltando segundos pra frente e pra trás e tudo sempre funcionou… :-/

    1. Avatar de Diogo Aleixo
      Diogo Aleixo

      Pois. Tambem não entendo a catastrofe.

  14. Avatar de Ed
    Ed

    Nao faria sentido atrasar os relogios centrais 1 segundo? assim quando fossem 23:59:59, com o relogio atrasado seria 23:59:58, desta forma dariam o tal segundo a mais ao ano! Ou tambem haveria implicacoes nos sistemas?

  15. Avatar de Gustavo Lima
    Gustavo Lima

    Tipo… os servidores agora vão parar por causa disso….
    Já testei, e não aconteceu nada. Continua tudo na mesma….
    Y2K all over again…..

  16. Avatar de Bruno Monteiro
    Bruno Monteiro

    e pq n param o relogio 1 segundo e voltam a ativar devono e problema resolvido? tp param o tempo no mundo e ativem 1 segundo? devia resolver nao? (apenas uma cena que pensei… )

    1. Avatar de JJ

      Isso ou atrasar 1 segundo, é o que vai acontecer. O problema é que isso não será feito em todos os sistemas informáticos do mundo ao mesmo tempo.

      Por exemplo os servidores da Europa vão actualizar a hora mais cedo que os dos EUA, ficando com menos um segundo em relação aos outros. A questão é que normalmente os sistemas estão preparados para ultrapassar as diferenças dos fusos horários em horas e não em segundos.

      Esta situação fará com que os fusos horários passaram a ser durante esse dia +/-[x de horas]h00m01s, o que poderá causar constrangimentos, até todos estarem certos (todo o mundo estar em Julho).

  17. Avatar de Arlindo
    Arlindo

    Todos os anos muda a hora duas vezes (versão/inverno) e não existem problemas de maior, para quê estar a complicar, é fazer o mesmo mas apenas com 1 segundo e não com uma hora. A 2015 July 1, 0h 0m 2s, passa a 2015 July 1, 0h 0m 1s… done! 😛

    1. Avatar de Monteiro
      Monteiro

      Ora nem mais!

  18. Avatar de Bento Martins
    Bento Martins

    Já aconteceu 25 vezes (desde 1972) e ainda não estão preparados?

    1. Avatar de David
      David

      Provavelmente não…dado que, o trabalho efetuado foi corrigir o problema para aquele dia, e provavelmente não foi criado uma forma de resolver esse problema sempre que esse problema surja! e agora deverão criar algo para os segundos, pois para as horas já estão preparados (segundos os comentários em cima) mas para os segundos não, como tal sugiro que o faça, para os seguintes possíveis unidades de segundo:
      decisegundo,
      decasegundo,
      centisegundo,
      hectosegundo,
      milisegundo,
      kilosegundo,
      microsegundo,
      megasegundo,
      nanosegundo,
      gigasegundo,
      picosegundo,
      terasegundo,
      femtosegundo,
      petasegundo,
      attosegundo,
      exasegundo,
      zeptosegundo,
      zettasegundo,
      yoctosegundo,
      yottasegundo.

      E assim resolve-se o problema de uma vez 😉

      Em vez de ir adiando para que um dia alguém trate do problema…

  19. Avatar de Ricardo Martins
    Ricardo Martins

    Pode parecer mentira mas este segundo na informática é como o segundo que define a existência das pessoas ( 1 segundo estão e outro não estão) mas na informática pode-se sempre criar um código para enganar outro código, não acham?

    1. Avatar de valter tembe
      valter tembe

      sim tambem acho. mas será que só na informatica terá esta difernça? e na vida humana que factores isto trem?

  20. Avatar de valter tembe
    valter tembe

    Provavelmente não…dado que, o trabalho efetuado foi corrigir o problema para aquele dia, e provavelmente não foi criado uma forma de resolver esse problema sempre que esse problema surja! e agora deverão criar algo para os segundos, pois para as horas já estão preparados (segundos os comentários em cima) mas para os segundos não, como tal sugiro que o faça, para os seguintes possíveis unidades de segundo:
    decisegundo,
    decasegundo,
    centisegundo,
    hectosegundo,
    milisegundo,
    kilosegundo,
    microsegundo,
    megasegundo,
    nanosegundo,
    gigasegundo,
    picosegundo,
    terasegundo,
    femtosegundo,
    petasegundo,
    attosegundo,
    exasegundo,
    zeptosegundo,
    zettasegundo,
    yoctosegundo,
    yottasegundo.

    E assim resolve-se o problema de uma vez 😉

    Em vez de ir adiando para que um dia alguém trate do problema…
    Responder

  21. Avatar de Carlota Lopes
    Carlota Lopes

    Depois de ler tantos e sábios comentários, fiquei ainda com o busilis da questão por perceber, que é:
    Afinal porque se ganhou mais 1 segundo?
    Ainda vão dizer que a culpa é da TROIKA;)

    1. Avatar de Pedro Simões

      São vários os factores que levam à necessidade desse acerto.

      A causa é um acelerar ou abrandar da rotação da terra.

      Agora o que provoca esta mudança na rotação está assente em terremotos e outras causas naturais.

  22. Avatar de André
    André

    E acertar a hora 1 segundo no dia anterior, ou no dia seguinte, não resolve?

  23. Avatar de naoliveira

    Se os servidores estiverem configurados para a hora UTC, mudam todos ao mesmo tempo, se não estiverem, então estão mal configurados 😉

  24. Avatar de Francisco
    Francisco

    Coisas que devem funcionar 24h/7 podem ter um problema com esta mudança afectar também a hora UTC. Os programas que usam a hora em UTC que não sofre as mudanças de hora de verão/inverno.

    Quando os computadores funcionam com base em nanosegundos e esperam precisão, podem fazer disparar alarmes de cpu ( interrupts ) antes ou depois do tempo esperado pelos programas, e isso pode gerar crash nos mesmos e o efeito em cadeia pode ter consequências importantes.

    Vários sites tiveram problemas com o ultimo leap second, em particular envolvendo programas em java.

    http://www.cnet.com/news/leap-second-bug-causes-site-software-crashes/

  25. Avatar de Jose Simoes
    Jose Simoes

    Ao longo dos anos tenho verificado uma relutância dos programadores de atacar, ou mesmo perceber, este problema.

    Reconheço que há um problema que não era fácil de resolver (eu sei já fiz programas que dependiam criticamente de ter a hora certa, com muita precisão). A questão é que os segundos de permeio (leap seconds) são imprevisíveis, e anunciados tipicamente só com 6 meses de avanço.

    Isto é, se estiver escrever código hoje não tenho nenhuma maneira de saber se, digamos, no dia 31 de Dezembro de 2015 (uma data possível) vai ou não ser introduzido – ou retirado – um segundo.

    Evidentemente que o problema pode ser resolvido, exige alguns recursos, mas pode ser resolvido, até porque o assunto está na mão de pessoas que percebem o que fazem.

    Semelhante, mas muito pior porque não pode ser resolvido, é duplicação de horas que existe uma vez por ano quando passamos da hora de verão para a hora de inverno. Aparentemente o legislador não se apercebeu que cria uma vazio legal, que dois eventos com a mesma data e hora legal podem ter acontecido separados de uma hora (teria sido fácil de resolver criando uma 25a hora).