Gin —— Go 语言的高性能 Web 框架

Gin 是一个用 Go 语言开发的 Web 框架,提供类 Martini 的 API,但是性能更好。因为有了 httprouter 性能提升了 40 倍之多。

$ cat test.go
package main

import (
    "net/http"
    "github.com/gin-gonic/gin"
)

func main() {
    router := gin.Default()
    router.GET("/", func(c *gin.Context) {
        c.String(http.StatusOK, "hello world")
    })
    router.GET("/ping", func(c *gin.Context) {
        c.String(http.StatusOK, "pong")
    })
    router.POST("/submit", func(c *gin.Context) {
        c.String(http.StatusUnauthorized, "not authorized")
    })
    router.PUT("/error", func(c *gin.Context) {
        c.String(http.StatusInternalServerError, "an error happened :(")
    })
    router.Run(":8080")
}

文章转载自 开源中国社区 [http://www.oschina.net]

时间: 2024-09-16 17:33:05

Gin —— Go 语言的高性能 Web 框架的相关文章

go语言-安装go web框架revel时遇到问题,求指导

问题描述 安装go web框架revel时遇到问题,求指导 最近在学习go web 编程,看到目前学习资源较多的框架是revel框架.但是在安装revel时遇到问题. user@user-xubuntu:~/Go$ go get github.com/revel/revel package code.google.com/p/go.net/websocket: Get https://code.google.com/p/go/source/checkout?repo=net: dial tcp

用Nginx + Lua(OpenResty)开发高性能Web应用

在互联网公司,Nginx可以说是标配组件,但是主要场景还是负载均衡.反向代理.代理缓存.限流等场景;而把Nginx作为一个Web容器使用的还不是那么广泛.Nginx的高性能是大家公认的,而Nginx开发主要是以C/C++模块的形式进行,整体学习和开发成本偏高;如果有一种简单的语言来实现Web应用的开发,那么Nginx绝对是把好的瑞士军刀;目前Nginx团队也开始意识到这个问题,开发了nginxScript:可以在Nginx中使用JavaScript进行动态配置一些变量和动态脚本执行;而目前市面上

【转】使用Nginx+Lua(OpenResty)开发高性能Web应用

在互联网公司,Nginx可以说是标配组件,但是主要场景还是负载均衡.反向代理.代理缓存.限流等场景:而把Nginx作为一个Web容器使用的还不是那么广泛.Nginx的高性能是大家公认的,而Nginx开发主要是以C/C++模块的形式进行,整体学习和开发成本偏高:如果有一种简单的语言来实现Web应用的开发,那么Nginx绝对是把好的瑞士军刀:目前Nginx团队也开始意识到这个问题,开发了nginxScript:可以在Nginx中使用JavaScript进行动态配置一些变量和动态脚本执行:而目前市面上

【入门篇】Nginx + FastCGI 程序(C/C++) 搭建高性能web service的Demo及部署发布

由于最近工作的需要,本人学习了一下利用高性能web server - Nginx,来发布C/C++编写的fastCGI程序,详细细节如下.     1.介绍     Nginx - 高性能web server,这个不用多说了,大家都知道.     FastCGI程序 - 常驻型CGI程序,它是语言无关的.可伸缩架构的CGI开放扩展,其主要行为是将CGI解释器进程保持在内存中并因此获得较高的性能.     Nginx要调用FastCGI程序,需要用到FastCGI进程管理程序(因为nginx不能直

Python语言使用Django开发Web框架

Django Web框架简介 Django 项目是一个 python[1]定制框架,它源自一个在线新闻 Web 站点,于 2005 年以开源的形式被释放出来.Django 框架的核心组件有: 用于创建模型的对象关系映射为最终用户设计的完美管理界面一流的 URL 设计设计者友好的模板语言缓存系统.Django符合MTV架构 Django的安装 Django的安装有两种方法,具体可参考官网(https://www.djangoproject.com/download/),这里采用第二种方法,即Opt

Yii v1.1.7发布 Web应用的高性能PHP框架

Yii 是一个基于组件.用于开发大型 Web 应用的高性能 PHP 框架.它将 Web 编程中的可重用性发挥到极致,能够显著加速开发进程.Yii(读作"易")代表简单(easy).高效(efficient).可扩展(extensible). Yii采用严格的OOP编写,并有着完善的库引用以及全面的教程.从 MVC,DAO/ActiveRecord,widgets,caching,等级式RBAC,Web服务,到主题化,I18N和L10N,Yii提供了今日Web 2.0应用开发所需要的几乎

探讨后端选型中不同语言及对应的Web框架

不得不指出的是,当我们喜欢一种语言的时候,我们可能会偏爱于在这门语言里寻找可用的方案.这自然是有好有坏,好的一点是:我们可以成为这门语言的专家:不好的一点是:选择的可能不是最合适的方案. 下面先探索一下可用的语言,以及它们对应的Web框架(以下内容均为本书作者个人观点). JavaScript 按照当前的流行趋势来看,JavaScript 是一门性价比非常高的语言.因为只要是Web,就会有前端,只要有前端,就需要有JavaScript.与此同时,Node.js 在后台中的地位已经愈发重要了.对一

Yii PHP Framework v1.1.6发布 大型Web应用高性能PHP框架

Yii是一个基于组件.用于开发大型 Web 应用的高性能 PHP 框架.在WEB开发中Yii可以最大限度的实现代码重用,极大的提高开发的速度.名字Yii(读音是Yee or [ji:],应该就是"易"的读音 )代表的是容易(easy),高效(effcient)和可扩展(extensible). 这便是基于组件的,高性能的phphttp://www.aliyun.com/zixun/aggregation/13435.html">开发框架,yii.是开发大型网站最好的选择

高性能web服务器框架Tornado简单实现restful接口及开发实例_python

有个朋友让我搞搞tornado框架,说实话,这个框架我用的不多... 我就把自己的一些个运维研发相关的例子,分享给大家. 怎么安装tornado,我想大家都懂. pip install tornado 再来说说他的一些个模块,官网有介绍的.我这里再啰嗦的复读机一下,里面掺夹我的理解. 主要模块 web - FriendFeed 使用的基础 Web 框架,包含了 Tornado 的大多数重要的功能,反正你进入就对了. escape - XHTML, JSON, URL 的编码/解码方法 datab