Google vindt innovatieve manier om sprongen te vermijden
Gepost door Richard N Williams on September 28th, 2011
Leap Seconds zijn in gebruik sinds de ontwikkeling van atoomklokken en de introductie van de globale tijdschaal UTC (Coordinated Universal Time). Schrikkelseconden voorkomen dat de werkelijke tijd, zoals verteld door atoomklokken, en de fysieke tijd, geregeerd door de zon die het hoogst is op het middaguur, uit elkaar drijven.
Sinds UTC in de 1970's begon toen UTC werd geïntroduceerd, zijn 24 Leap Seconds toegevoegd. Schrikkelseconden zijn een punt van controverse, maar zonder hen zou de dag langzaam in de nacht verdwijnen (zij het na vele eeuwen); ze veroorzaken echter problemen voor sommige technologieën.
NTP-servers (Network Time Protocol) implementeren Leap Seconds door de laatste seconde van de dag te herhalen wanneer een Leap Second wordt geïntroduceerd. Terwijl Leap Second-introductie een zeldzame gebeurtenis is, die slechts één of twee keer per jaar plaatsvindt, voor sommige complexe systemen die duizenden gebeurtenissen verwerken, veroorzaakt deze herhaling een seconde problemen.
Voor reuzen van zoekmachines, Google, kunnen Leap Seconds ervoor zorgen dat hun systemen tijdens deze tweede fase werken, zoals in 2005, wanneer sommige van de geclusterde systemen niet meer werken accepteren. Hoewel dit er niet toe leidde dat hun site werd onderdrukt, wilde Google het probleem aanpakken om toekomstige problemen te voorkomen die door deze chronologische fudge werden veroorzaakt.
De oplossing was om een programma te schrijven dat tijdens de dag van een Sprong Tweede in wezen tegen hun computerservers gelogen had, waardoor de systemen geloofden dat de tijd enigszins vooruit was op wat de NTP-servers vertelden het.
Deze geleidelijke versnellingstijd betekende dat aan het einde van een dag, wanneer een Leap Second is toegevoegd, de tijdservers van Google de extra seconde niet hoeven te herhalen omdat de tijd op zijn servers dan al een seconde achterblijft.
Hoewel Google's oplossing voor de Leap Second geniaal is, veroorzaken de meeste computersystemen Leap Seconds helemaal geen problemen. Met een computernetwerk dat is gesynchroniseerd met een NTP-server, worden sprongeneconden automatisch aan het einde van een dag aangepast en komen maar zelden voor, zodat de meeste computersystemen deze kleine storing op den duur nooit merken.