mirror of https://github.com/jlelse/GoBlog
Add HTTP compression
This commit is contained in:
parent
96259912cb
commit
a2190306da
14
cache.go
14
cache.go
|
@ -135,21 +135,11 @@ func saveCache(path string, now time.Time, header map[string][]string, body []by
|
|||
headerBytes, _ := json.Marshal(header)
|
||||
startWritingToCacheDb()
|
||||
defer finishWritingToCacheDb()
|
||||
tx, err := cacheDb.Begin()
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
_, _ = tx.Exec("insert or replace into cache (path, time, header, body) values (?, ?, ?, ?);", path, now.Unix(), headerBytes, body)
|
||||
_ = tx.Commit()
|
||||
_, _ = cacheDb.Exec("insert or replace into cache (path, time, header, body) values (?, ?, ?, ?);", path, now.Unix(), headerBytes, body)
|
||||
}
|
||||
|
||||
func purgeCache() {
|
||||
startWritingToCacheDb()
|
||||
defer finishWritingToCacheDb()
|
||||
tx, err := cacheDb.Begin()
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
_, _ = tx.Exec("delete from cache; vacuum;")
|
||||
_ = tx.Commit()
|
||||
_, _ = cacheDb.Exec("delete from cache; vacuum;")
|
||||
}
|
||||
|
|
2
go.mod
2
go.mod
|
@ -37,7 +37,7 @@ require (
|
|||
github.com/yuin/goldmark-emoji v1.0.1
|
||||
golang.org/x/crypto v0.0.0-20201016220609-9e8e0b390897
|
||||
golang.org/x/net v0.0.0-20201016165138-7b1cca2348c0 // indirect
|
||||
golang.org/x/sys v0.0.0-20201018121011-98379d014ca7 // indirect
|
||||
golang.org/x/sys v0.0.0-20201018230417-eeed37f84f13 // indirect
|
||||
gopkg.in/check.v1 v1.0.0-20200902074654-038fdea0a05b // indirect
|
||||
gopkg.in/ini.v1 v1.62.0 // indirect
|
||||
gopkg.in/yaml.v2 v2.3.0 // indirect
|
||||
|
|
4
go.sum
4
go.sum
|
@ -372,8 +372,8 @@ golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7w
|
|||
golang.org/x/sys v0.0.0-20200724161237-0e2f3a69832c h1:UIcGWL6/wpCfyGuJnRFJRurA+yj8RrW7Q6x2YMCXt6c=
|
||||
golang.org/x/sys v0.0.0-20200724161237-0e2f3a69832c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20201018121011-98379d014ca7 h1:CNOpL+H7PSxBI7dF/EIUsfOguRSzWp6CQ91yxZE6PG4=
|
||||
golang.org/x/sys v0.0.0-20201018121011-98379d014ca7/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20201018230417-eeed37f84f13 h1:5jaG59Zhd+8ZXe8C+lgiAGqkOaZBruqrWclLkgAww34=
|
||||
golang.org/x/sys v0.0.0-20201018230417-eeed37f84f13/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
||||
golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
||||
golang.org/x/text v0.3.2 h1:tW2bmiBqwgJj/UpqtC8EpXEZVYOwU0yG4iWbprSVAcs=
|
||||
|
|
9
http.go
9
http.go
|
@ -1,6 +1,7 @@
|
|||
package main
|
||||
|
||||
import (
|
||||
"compress/flate"
|
||||
"net/http"
|
||||
"strconv"
|
||||
"strings"
|
||||
|
@ -69,10 +70,14 @@ func reloadRouter() error {
|
|||
func buildHandler() (http.Handler, error) {
|
||||
r := chi.NewRouter()
|
||||
|
||||
r.Use(middleware.Recoverer)
|
||||
if appConfig.Server.Logging {
|
||||
r.Use(middleware.RealIP, middleware.Logger)
|
||||
r.Use(middleware.RealIP)
|
||||
r.Use(middleware.Logger)
|
||||
}
|
||||
r.Use(middleware.Recoverer, middleware.StripSlashes, middleware.GetHead)
|
||||
r.Use(middleware.Compress(flate.DefaultCompression))
|
||||
r.Use(middleware.StripSlashes)
|
||||
r.Use(middleware.GetHead)
|
||||
|
||||
// Profiler
|
||||
if appConfig.Server.Debug {
|
||||
|
|
Loading…
Reference in New Issue