mox/http/atime.go
Mechiel Lukkien 9e248860ee
implement transparent gzip compression in the webserver
we only compress if applicable (content-type indicates likely compressible),
client supports it, response doesn't already have a content-encoding).

for internal handlers, we always enable compression.  for reverse proxied and
static files, compression must be enabled per handler.

for internal & reverse proxy handlers, we do streaming compression at
"bestspeed" quality (probably level 1).

for static files, we have a cache based on mtime with fixed max size, where we
evict based on least recently used. we compress with the default level (more
cpu, better ratio).
2023-08-21 21:52:35 +02:00

9 lines
187 B
Go

//go:build !netbsd && !freebsd && !darwin
package http
import "syscall"
func statAtime(sys *syscall.Stat_t) int64 {
return int64(sys.Atim.Sec)*1000*1000*1000 + int64(sys.Atim.Nsec)
}