websocket for golang webapp

Download .zip Download .tar.gz View on GitHub

valente - websocket for golang webapp

valente is an experiment with Golang webapp using WebSockets. There are similar solutions in another languages/platform:

  • The Wt WebFramework has an experimental features with all comunications between server and browser using websockets.
  • N2O and Nitrogen are frameworks with that feature coded in Erlang.

The use of asynchronism is mandatory for this solutions. Traditional threads aren't viable, due to high memory consumed for each connection. The Wt Framework is using Boost::asio to handle connections. In Go and Erlang, the languages features should make that scheme simple and scalable. I don't know :)

The valente is based on Nitrogen ideas.


To start using valente, install Go and run go get:

$ go get

This will retrieve the library and install the valente command line utility into your $GOBIN path.

How to use

$ valente new appsample
$ cd appsample
$ go get
$ go build
$ ./appsample

Access http://localhost:8000/ with your browser for boilerplate demo.