推荐一:kubernetes 【Star:44418】
Kubernetes基于Docker , 其目的是让用户通过Kubernetes集群来进行云端容器集群的管理,而无需用户进行复杂的设置工作 。系统会自动选取合适的工作节点来执行具体的容器集群调度处理工作 。
推荐二:etcd 【Star:21408】
etcd是由CoreOS开发并维护键值存储系统,它使用Go语言编写,并通过Raft一致性算法处理日志复制以保证强一致性 。目前,Google的容器集群管理系统Kubernetes、开源PaaS平台Cloud Foundry和CoreOS的Fleet都广泛使用了etcd 。
推荐三:deis 【Star:6093】
Deis是一个基于Docker和CoreOS的开源PaaS平台,旨在让部属和管理服务器上的应用变得轻松容易 。它可以运行在AWS、GCE以及Openstack平台下 。
推荐四:flynn 【Star:6936】
Flynn是一个使用Go语言编写的开源PaaS平台,可自动构建部署任何应用到Docker容器集群上运行 。Flynn项目受到Y Combinator的支持,目前仍在开发中,被称为是下一代的开源PaaS平台 。
推荐五:lime 【Star:13775】
相对上面的几款Go语言在云端和服务器端之外 , Lime则显得比较特殊 。Lime,则是一款用Go语言写的桌面编辑器程序,被看做是著名编辑器Sublime Text的开源实现 。
六:revel 【Star:10508】
Revel是一个高生产力的Go语言Web框架 。Revel框架支持热编译 , 当编辑、保存和刷新源码时,Revel会自动编译代码和模板;全栈特性,支持路由、参数解析、缓存、测试、国际化等功能 。
go语言的webengine叫什么Java教程
Linux入门
更多
首页
?
Go语言WEB框架(Gin)详解
在 Go语言开发的 Web 框架中,有两款著名 Web 框架分别是 Martini 和 Gin , 两款 Web 框架相比较的话,Gin 自己说它比 Martini 要强很多 。
Gin 是 Go语言写的一个 web 框架,它具有运行速度快,分组的路由器,良好的崩溃捕获和错误处理,非常好的支持中间件和 json 。总之在 Go语言开发领域是一款值得好好研究的 Web 框架 , 开源网址:
首先下载安装 gin 包:
go get -u github.com/gin-gonic/gin
一个简单的例子:
package main
import "github.com/gin-gonic/gin"
func main() {
//Default返回一个默认的路由引擎
r := gin.Default()
r.GET("/ping", func(c *gin.Context) {
//输出json结果给调用方
c.JSON(200, gin.H{
"message": "pong",
})
})
r.Run() // listen and serve on 0.0.0.0:8080
}
编译运行程序,打开浏览器,访问页面显示:
{"message":"pong"}
gin 的功能不只是简单输出 Json 数据 。它是一个轻量级的 WEB 框架,支持 RestFull 风格 API , 支持 GET,POST,PUT , PATCH , DELETE,OPTIONS 等 http 方法,支持文件上传 , 分组路由,Multipart/Urlencoded FORM,以及支持 JsonP,参数处理等等功能,这些都和 WEB 紧密相关,通过提供这些功能 , 使开发人员更方便地处理 WEB 业务 。
Gin 实际应用
接下来使用 Gin 作为框架来搭建一个拥有静态资源站点 , 动态 WEB 站点,以及 RESTFull API 接口站点(可专门作为手机 APP 应用提供服务使用)组成的 , 亦可根据情况分拆这套系统,每种功能独立出来单独提供服务 。
下面按照一套系统但采用分站点来说明 , 首先是整个系统的目录结构,website 目录下面 static 是资源类文件,为静态资源站点专用;photo 目录是 UGC 上传图片目录,tpl 是动态站点的模板 。
当然这个目录结构是一种约定,可以根据情况来修改 。整个项目已经开源,可以访问来详细了解:具体每个站点的功能怎么实现呢?请看下面有关每个功能的讲述:
推荐阅读
- 服务器中转,服务器中转 Endpoint IP
- 无显卡电脑怎么全屏,电脑没有显卡怎么设置
- 主播玩的恋爱养成游戏,主播玩的恋爱养成游戏叫什么
- 插入u盘不显示是什么原因,为何插上u盘不显示
- c语言函数参数调用机制 c语言有参函数调用
- 微信视频号怎么关掉评论,微信视频号怎样关闭评论
- html标签h1字体大小,html h1字体大小
- 虚拟主机可以租用吗,虚拟主机可以租用吗
- linuxll命令 ll linux命令