title: golang http server does not accept post large data
body: <p>At current time try use golang http server and compile it from this code:</p>
  
  <pre><code>    package main
  
  import (
      "io"
      "net/http"
      "time"
  )
  
  func hello(w http.ResponseWriter, r *http.Request) {
      r.ParseForm()
      io.WriteString(w, "Hello world!")
  }
  
  var mux map[string]func(http.ResponseWriter, *http.Request)
  
  func main() {
      server := http.Server{
          Addr:           ":8000",
          MaxHeaderBytes: 30000000,
          ReadTimeout:    10 * time.Second,
          WriteTimeout:   10 * time.Second,
          Handler:        &amp;myHandler{},
      }
  
      mux = make(map[string]func(http.ResponseWriter, *http.Request))
      mux["/"] = hello
  
      server.ListenAndServe()
  }
  
  type myHandler struct{}
  
  func (*myHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) {
      if h, ok := mux[r.URL.String()]; ok {
          h(w, r)
          return
      }
  
      io.WriteString(w, "My server: "+r.URL.String())
  }
  </code></pre>
  
  <p>Runs it and send test data via Apache Bench</p>
  
  <pre><code>ab.exe -c 30 -n 1000 -p ESServer.exe -T application/octet-stream http://localhost:8000/ 
  </code></pre>
  
  <p>It's working excelent with small files but ESServer.exe has size 8Mb and I'm receiving next error "apr_socket_recv: An existing connection was forcibly closed by the remote host. (730054)."</p>
  
  <p>What problem may happens?</p>