在Github中stars数最多的Go Web框架集合

Project NameStarsForksDescription
beego121952810beego is an open-source, high-performance web framework for the Go programming language.
gin116021357Gin is a HTTP web framework written in Go (Golang). It features a Martini-like API with much better performance -- up to 40 times faster. If you need smashing performance, get yourself some Gin.
martini96081015Classy web framework for Go
revel87401158A high productivity, full-stack web framework for the Go language.
echo8165715High performance, minimalist Go web framework
iris7544794The fastest web framework for Go in (THIS) Earth. HTTP/2 Ready to GO. MVC when you need it. https://docs.iris-go.com
httprouter5482547A high performance HTTP request router that scales well
fasthttp4880440Fast HTTP package for Go. Tuned for high performance. Zero memory allocations in hot paths. Up to 10x faster than net/http
mux4435600A powerful URL router and dispatcher for golang.
web.go2932464web.go is the simplest way to write web applications in the Go programming language. It's ideal for writing simple, performant backend web services.
go-json-rest2886314A quick and easy way to setup a RESTful JSON API
chi2409158lightweight, idiomatic and composable router for building Go HTTP services
go-restful2291352package for building REST-style Web Services using Google Go
goa2270225Design-based APIs and microservices in Go
macaron2020185Package macaron is a high productive and modular web framework in Go.
gizmo1897122A Microservice Toolkit from The New York Times
buffalo1600107Rapid Web Development w/ Go
go-swagger1448295Swagger 2.0 implementation for go
armor126131Uncomplicated, modern HTTP server
web123391Go Router + Middleware. Your Contexts.
pat1063103A Sinatra style pattern muxer for Go's net/http library
bone105271Lightning Fast HTTP Multiplexer
go-tigertonic95677A Go framework for building JSON web services inspired by Dropwizard
faygo873137Faygo is a fast and concise Go Web framework that can be used to develop high-performance web app(especially API) with fewer codes.
lion74539Lion is a fast HTTP router for building modern scalable modular REST APIs in Go
tango62291Micro & pluggable web framework for Go
goji51832Goji is a minimalistic and flexible HTTP request multiplexer for Go (golang)
traffic51520Sinatra inspired regexp/pattern mux and web framework for Go
gongular38010gongular is an HTTP Server Framework for developing APIs easily.
gear36440A lightweight, composable and high performance web service framework for Go.
lars33119Is a lightweight, fast and extensible zero allocation HTTP router for Go used to create customizable frameworks.
neo31930Go Web Framework
go-ozzo20634ozzo-routing is a Go package that provides high performance and powerful HTTP routing capabilities for Web applications.
golf20016A fast, simple and lightweight micro-web framework for Go, comes with powerful features and has no dependencies other than the Go Standard Library.
ace16021Blazing fast Go Web Framework
gem14331Gem is an easy to use and high performance web framework written in Go(golang), support HTTP/2, and provides leveled logger and frequently used middlewares.
zerver13919a RESTful API framework
siris13215The community driven fork of Iris. The fastest web framework for Golang!
fasthttp-routing12913A fast and powerful routing package for fasthttp servers
baa8519an express Go web framework with routing, middleware, dependency injection, http context.
gramework7111The Good Framework
route386HTTP request routing library and language
pure374Tideland Go REST Server Library
trygo2312http and web services of framework for golang
gorest231Tideland Go REST Server Library
webgo152A very lightweight & simple web framework for Go
orivil115Fast & Simple & Powerful Go Web Framework. Inspired by Symfony and Laravel.

    

   前六位都是Go语言世界中的老牌Web框架,Star数众多,功能齐全。除了前六位以外,笔者还使用过macarontango ,faygo这三个框架,都是国内优秀开源项目,功能非常齐全易用。在以上列表中还有一些小型Web框架的源代码非常适合阅读学习。最近一年,Go各类开源项目异常活跃,从以上Web框架的Star数和活跃度也可以从侧面反映Go语言正在云生态圈构建上发力。

下面是来自Go web framework benchmark的部分Go Web框架性能测试数据

 

Basic Test

The first test case is to mock 0 ms, 10 ms, 100 ms, 500 ms processing time in handlers.

Benchmark (Round 3)the concurrency clients are 5000.

Latency (Round 3)Latency is the time of real processing time by web servers. The smaller is the better.

Allocs (Round 3)Allocs is the heap allocations by web servers when test is running. The unit is MB. The smaller is the better.

If we enable http pipelining, test result as below:

benchmark pipelining (Round 2)

Concurrency Test

In 30 ms processing time, the tets result for 100, 1000, 5000 clients is:

concurrency (Round 3)

Latency (Round 3)

Latency (Round 3)

If we enable http pipelining, test result as below:

concurrency pipelining(Round 2)

转载于:https://my.oschina.net/u/168737/blog/1531372

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值