boxcars

Infrastructure

web server

SHOW HN2013

106points
56comments
#214of 1,739 in 2013
Top 13%of 2013 by points

How HN took it

RoastedHalf or more of the comments are critical

0 positive, 9 neutral or asking, 2 mixed, 12 critical, out of 23 comments about the project. Thread score -0.43.

Execution: 0 for, 5 againstDesign: 0 for, 3 againstIdea: 0 for, 2 againstPrivacy: 0 for, 1 againstDocs: 0 for, 1 against

The thread, comment by comment

Each row is a top-level comment and its replies, in HN's order. Select a cell to open that comment on HN.

positive neutral or mixed critical about another commenter or something else the maker

What HN said

What people liked

  • Go version is much easier to write than nginx while performing close to it

    From 2 comments
    • I remain not-entirely-convinced (1) by Go, but things like this are turning the tide. If it is indeed slower than nginx, it is not dramatically so. Considering the amount of time…
      justinsb on HN
    • I would like to know how the benchmarks are generated, but my point is that it wasn't slower-enough to ignore it, and that's amazing considering how much micro-optimization has…
      justinsb on HN

Objections

  • Runs as root or needs high port; no user ID dropping, which the maker later addressed with a -secure option

    From 2 comments
    • A word of warning guys, I've had a look through the code and unless I've missed the obvious, there's nothing in there to change user ID; which means this would either need to be…
      laumars on HN
    • just implemented -secure option for this purpose; https://github.com/azer/boxcars/blob/master/secure.go usage example; http://github.com/azer/boxcars#security thanks for the…
      oakaz on HN
  • Benchmarks are unclear and may not reflect real workloads

    From 3 comments
    • Looking at the benchmark (https://gist.github.com/azer/5955772), which measure suggests that its slower than nginx? I was looking at the transaction rate and the longest…
      joebo on HN
    • With benchmarks like this it worth asking 3 questions: * Are they relevant. Does this represent the expected production workload. You could find this is 10x better than nginx at…
      rdtsc on HN
    • I would like to know how the benchmarks are generated, but my point is that it wasn't slower-enough to ignore it, and that's amazing considering how much micro-optimization has…
      justinsb on HN
  • JSON configuration is too limited for web server config

    From 2 comments
    • json format is too limited for a web server configuration if you want to be the nginx alternative. Think about how you would represent conditional statements, how to include and…
      tszming on HN
    • json is fine until your config system needs accurate numeric values.
      harrytuttle on HN
  • Not a true web server; more a reverse proxy with static serving

    From 2 comments
    • So it's a reverse HTTP proxy, which can also serve files locally? That's an interesting thing, no doubt, but it doesn't feel like a web-server. I wrote a flexible reverse…
      stevekemp on HN
    • It's technically an alternative, but since it performs worse and has less features you would probably never actually use it as an alternative. It should probably be described as…
      RyanZAG on HN
  • No HTTPS support found

    From 1 comment
    • I'm very interested in this because this is the kind of web server I was planning to write for my work, but from a quick glance I didn't find HTTPS support. Is HTTPS supported or…
      JoeAcchino on HN

Requests

  • Add HTTPS support

    From 1 comment
    • I'm very interested in this because this is the kind of web server I was planning to write for my work, but from a quick glance I didn't find HTTPS support. Is HTTPS supported or…
      JoeAcchino on HN
  • Independent security review

    From 1 comment
    • Nice to see an alternative on the cards. Of course, we need some independent security reviews before this can be used seriously.
      alexchamberlain on HN
  • Support for Windows or non-GNU/Linux platforms

    From 1 comment

Questions

  • How are the benchmarks generated?

    From 1 comment
    • I would like to know how the benchmarks are generated, but my point is that it wasn't slower-enough to ignore it, and that's amazing considering how much micro-optimization has…
      justinsb on HN
  • How are custom 404 pages served with correct status codes?

    From 1 comment
    • The custom 404 page example in the readme looked incomplete - how do you ensure those pages are served with the correct HTTP status code?
      simonw on HN
  • Is this a common Go convention to nest main package in a subdirectory?

    From 1 comment
    • Code organization question: is this a common convention in Go, to nest the main package in a subdirectory and put all of the 'modules' in different files but with the same…
      pandeiro on HN

Alternatives named

  • nginx

    From 2 comments
    • I remain not-entirely-convinced (1) by Go, but things like this are turning the tide. If it is indeed slower than nginx, it is not dramatically so. Considering the amount of time…
      justinsb on HN
    • Looking at the benchmark (https://gist.github.com/azer/5955772), which measure suggests that its slower than nginx? I was looking at the transaction rate and the longest…
      joebo on HN
  • mod_proxy

    From 1 comment
    • Honestly I never have. Because in practise it is fast enough that it just didn't come up. I'm sure that if I were to pimp the project properly then that would be a good thing to…
      stevekemp on HN
  • Mongrel2

    From 1 comment
    • The point is that it's written in language-du-jour and therefore fascinating and novel. In fairness though, json will probably wind up being a common configuration format anyhow.…
      jacques_chester on HN

Category, keywords, summaries and labels on this page were made by AI (Thread Reader v2) and not checked by hand. Each point links to the comments it came from.

Add a badge to your READMEShown on HackerShow
[![Shown on HackerShow](https://hackershow.org/badge.svg)](https://hackershow.org/show/6112349)