On Thu, Jun 13, 2019 at 4:05 PM Tong Sun <suntong...@gmail.com> wrote:
> Yep, thanks Justin, both your points really made the difference, > because I do believe that the buffered socket write is the key > component for the 3-time improvement that I'm getting (from using > FastHTTP), IMHO. And FastHTTP recommends GOMAXPROCS=1 too, which I > used this time as well. > > So thanks again, Justin & Ronny! > Cool. Glad that actually helped. I do feel with your results, and in agreement with others, that you really are comparing Go to the underlying C implementation of php, with everything stripped back so far. But at least you are happy with your results! > On Sat, Jun 8, 2019 at 10:54 PM Justin Israel <justinisr...@gmail.com> > wrote: > > > > I'm wondering about a couple factors in this comparison that seem to > make a difference in my local test: > > > > I think perl sockets are write buffered. So would the equivalent be to > wrap the net.Conn in bufio.NewWriter(c) and flush before the Close? > > Since this is a straigh-line test where both servers are not using > concurrent handling of connections (uncommon for a Go server even on 1 > core), would it not make sense to run the Go server with GOMAXPROCS=1? > > > > - Justin > > > > On Saturday, June 8, 2019 at 1:36:49 AM UTC+12, Tong Sun wrote: > >> > >> I had always believed that the web projects build with Go should be > much faster than Perl, since Go is a compiled language. > >> > >> However that belief was crushed brutally last night, when I did a > comparison -- the Go implementation is 8 times worse than the Perl! -- the > mean response time jumped from 6ms to 48ms. > >> > >> I know this is the simplest possible web server, but still, when it > comes to simple web servers like this, I have to say that Perl performs > much better than Go. > >> > >> I don't think there is much I can twist on the Go side, since it can't > be more simpler than that. However, I also believe it won't hurt to ask and > confirm. So, > >> > >> Have I missed anything? Is it possible for me to make my Go > implementation anywhere near the Perl's performance? > >> > >> Thanks > >> > >> > > -- > > You received this message because you are subscribed to a topic in the > Google Groups "golang-nuts" group. > > To unsubscribe from this topic, visit > https://groups.google.com/d/topic/golang-nuts/iH2Ck_hpCpI/unsubscribe. > > To unsubscribe from this group and all its topics, send an email to > golang-nuts+unsubscr...@googlegroups.com. > > To view this discussion on the web visit > https://groups.google.com/d/msgid/golang-nuts/37a1ac7e-85ee-4775-b348-5673c41a162c%40googlegroups.com > . > > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/golang-nuts/CAPGFgA2_oz-Frmw13oraLoeyzidwy_r4yWUfPNuqFFKefgG6DQ%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.