miyabihitoの日記

個人的な技術メモ

Go Web Application Framework (2017/10)

概要

GoのWeb Application Frameworkの調査 (2017/10)

Gin

  • node.jsのexpressっぽい
  • middlewareで共通処理を追加できる(認証やセッション等)
  • star: 12,239

Negroni

  • Idiomatic HTTP Middleware for Golang
  • Negroni is not a framework. It is a middleware-focused library that is designed to work directly with net/http

  • star: 5,027

Martini

NOTE: The martini framework is no longer maintained.

Gorilla

  • Gorilla is a web toolkit for the Go programming language
  • フレームワークではなく、routerやsession管理などのtoolkit

Iris

  • The fastest web framework for Go in (THIS) Earth.
  • マイクロフレームワークだが、MVCも可
  • デフォルトで5つのテンプレートエンジンが使用可能。
  • Websocket対応
  • star: 7,909

Revel

  • A high-productivity web framework for the Go language.
  • watch機能があるので、開発に便利
  • sessionは、cookieに全部突っ込む思想
  • Websocket対応
  • star: 8,900

beego

  • ormまで含むフルスタック
  • 中国でよく使われている
  • star: 12,580

goji

  • Goji is a HTTP request multiplexer, similar to net/http.ServeMux
  • フレームワークというより、net/ServeMuxに柔軟なpatternやmiddlewareが追加されたものという感じ
  • star: 500 (old ver: 3,315)

echo

  • High performance, minimalist Go web framework
  • orm等は含まないマイクロフレームワーク
  • middlewareで共通処理を追加できる(認証やセッション等)
  • glide等にも対応
  • 良さげ
  • star: 8,447