Dlaczego „29030400” sekund jest używanych jako wspólna wartość dla wygasania pamięci podręcznej?

10

Zauważyłem, że 29030400 jest bardzo często używany w dyrektywach Expires dla plików statycznych.

Google zaleca buforowanie tego rodzaju plików do 1 roku (co najmniej 1 miesiąc).

Zrobiłem matematykę: 29030400 sekund = 336 dni

To około 1 rok minus 1 miesiąc, więc idealnie mieści się w zalecanym przedziale, ale pytanie brzmi, dlaczego dokładnie 29030400? A nie 31536000 sekund = 365 dni na przykład? Po prostu ślepa kopia / wklej wartości, która została ustawiona losowo w dawnych czasach? Czy może ma inne wytłumaczenie?

heytools
źródło
2
Niewidoczne kopiowanie / wklejanie!
Ali Hashemi

Odpowiedzi:

16

Może pochodzić

60 * 60 * 24 * 7 * 4 * 12 = 29030400

gdzie każdy miesiąc składa się dokładnie z 4 tygodni.

unor
źródło
1
Świetna odpowiedź m8 :-) wiele osób zapomina, że ​​4 tygodnie to nie miesiąc.
Simon Hayter
ma sens, genialny, zaakceptowany.
heytools
1

Unor ma rację. To jak znalezienie 2419200 sekund w ciągu 4 tygodni, a następnie pomnożenie przez 12 przez rok 29030400.

Jak jednak wspominasz, nie jest to zbyt dokładne, ponieważ wiele miesięcy ma 31 dni, 5 tygodni itp.

Podaję dodatkową odpowiedź (mimo że podano prawidłową odpowiedź) po prostu w celu podania dokładnych sekund dla „roku gregoriańskiego”, który obejmuje również te 5 tygodni, 28 dni w lutym itp. W przypadku, gdy ktoś potrzebuje takiej liczby.

W 1 roku gregoriańskim jest 31556952 sekund. Jeśli chcesz mieć dokładny rok w pamięci podręcznej, może to być liczba, której chcesz użyć do wygaśnięcia pamięci podręcznej. :)

jsidigital
źródło
wygaśnięcia pamięci podręcznej tak naprawdę nie muszą być niczym. Mógłbyś zaokrąglić do 30000000 sekund i to naprawdę nie miałoby większego znaczenia.
Stephen Ostermiller