Skip to content

Commit 6d87af2

Browse files
committed
fix CPU high usage on docker
1 parent 381ffd9 commit 6d87af2

File tree

2 files changed

+5
-22
lines changed

2 files changed

+5
-22
lines changed

handle.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@ import (
66
"net/http/httputil"
77
"log"
88
"net"
9-
"context"
109
"time"
1110
"io/ioutil"
11+
"context"
1212
)
1313

1414
type handle struct {
@@ -21,7 +21,6 @@ func (this *handle) ServeHTTP(w http.ResponseWriter, r *http.Request) {
2121
if err != nil {
2222
log.Fatalln(err)
2323
}
24-
2524
dialer := &net.Dialer{
2625
Timeout: 30 * time.Second,
2726
KeepAlive: 30 * time.Second,

main.go

Lines changed: 4 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,8 @@
11
package main
22

33
import (
4-
"log"
54
"net/http"
6-
"bufio"
7-
"os"
8-
"strings"
5+
"log"
96
)
107

118
var srv http.Server
@@ -15,33 +12,20 @@ func StartServer(bind string, remote string) {
1512
h := &handle{reverseProxy: remote}
1613
srv.Addr = bind
1714
srv.Handler = h
18-
19-
go func() {
15+
//go func() {
2016
if err := srv.ListenAndServe(); err != nil {
2117
log.Fatalln("ListenAndServe: ", err)
2218
}
23-
}()
19+
//}()
2420
}
2521

2622
func StopServer() {
27-
if err := srv.Close() ; err != nil {
23+
if err := srv.Shutdown(nil) ; err != nil {
2824
log.Println(err)
2925
}
3026
}
3127

3228
func main() {
3329
cmd := parseCmd()
3430
StartServer(cmd.bind, cmd.remote)
35-
reader := bufio.NewReader(os.Stdin)
36-
for {
37-
str, err := reader.ReadString('\n')
38-
if err != nil {
39-
log.Println(err)
40-
}
41-
if strings.TrimSpace(str) == "stop" {
42-
log.Println("will stop server")
43-
StopServer()
44-
return
45-
}
46-
}
4731
}

0 commit comments

Comments
 (0)