一个计算机技术爱好者与学习者

0%

好好学Golang:Gin框架入门篇

1. Gin框架简介

Gin 是一个用 Go (Golang) 编写的 Web 框架。 它具有类似 martini 的 API,性能要好得多,得益于 httprouter,速度提高了 40 倍。 如果在使用Golang开发时需要性能和良好的生产力,Gin框架很合适。

参考文档:

2. Gin/Beego/Iris对比

Gin:

  • 高性能:Gin的速度可以比较接近于最低级别的网页处理程序,比如 net/http 的速度。这是尽可能少的内存拷贝和更少的内存分配所带来的好处。
  • 简单易用:对于基本的Web应用程序,Gin通过降低API的复杂性而达到高效易用。
  • 特性全面:Gin提供了大量便利的功能,如中间件、路由、表单类型解析等。
  • 社区活跃,资料较多。

Beego:

  • 整合性强:Beego采用模块化设计,包括ORM、Web框架、日志等,基于此可以直接编写Web应用程序,无需选用其他框架。
  • 简单直观:Beego的API使用起来简单方便,可以便利地应用于Web开发中。
  • 自动化代码生成:Beego有自己的bee命令行工具,可以自动生成代码。
  • 生态完备,有完善的框架自带功能以及不少配套工具,但相对资源消耗较大,社区活跃度一般。

Iris:

  • 高性能:Iris框架是性能上最快的GoWeb框架,处理请求的速度非常迅速。
  • 易于上手:Iris提供了很多示例和说明,让初学者容易上手。
  • 提供了丰富的功能,比如认证,websockets,even sourcing等。
  • 社区活跃度较低,国内被使用的情况不如Gin和Beego。

整体来说,Gin是一款轻量级、足够灵活、性能极高的框架,很适合中小型项目;Beego则功能全面,适合大型项目,底层封装偏重,上手较为复杂;而Iris性能最好,但是社区活跃度和文档相对较少。

3. Gin快速入门

3.1. 安装配置Golang

Gin 需要 Go 1.13 及以上版本,Go安装配置方法参考文档《好好学Golang:Golang入门篇》

3.2. 安装Gin

1、创建一个Golang项目

1
2
mkdir gin-learning && cd gin-learning
go mod init gin-learning

2、安装Gin

1
go get -u github.com/gin-gonic/gin

3.3. example.go

1、创建一个 example.go 文件,内容为

1
2
3
4
5
6
7
8
9
10
11
12
13
package main

import "github.com/gin-gonic/gin"

func main() {
r := gin.Default()
r.GET("/ping", func(c *gin.Context) {
c.JSON(200, gin.H{
"message": "pong",
})
})
r.Run() // 监听并在 0.0.0.0:8080 上启动服务
}

2、启动服务

1
go run example.go

3、访问服务

1
curl localhost:8080/ping
  • 本文作者: 好好学习的郝
  • 原文链接: https://www.voidking.com/dev-gin-start/
  • 版权声明: 本文采用 BY-NC-SA 许可协议,转载请注明出处!源站会即时更新知识点并修正错误,欢迎访问~
  • 微信公众号同步更新,欢迎关注~