XunjunYin / ngo

Ngo是由网易传媒基础技术团队开源的一个类似Java Spring Boot的框架,全部使用Go语言开发,做到快速开发应用

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

简介

Ngo是一个类似Java Spring Boot的框架,全部使用Go语言开发,主要目标是:

  • 提供比原有Java框架更高的性能和更低的资源占用率
  • 尽量为业务开发者提供所需的全部工具库
  • 嵌入哨兵监控,自动上传监控数据
  • 自动加载配置和初始化程序环境,开发者能直接使用各种库
  • 与线上的健康检查、运维接口等运行环境匹配,无需用户手动开发配置

使用

使用 go get -u github.com/NetEase-Media/ngo 命令下载安装

快速开始

go main

package main

import (
	"github.com/NetEase-Media/ngo/pkg/ngo"
	"github.com/NetEase-Media/ngo/pkg/server/http"
	_ "github.com/NetEase-Media/ngo/pkg/server/http/admin"
	"github.com/gin-gonic/gin"
)

// go run . -c ./app.yaml
func main() {
	app := ngo.Init()
	s := http.Get()
	s.AddRoute(http.GET, "/", func(ctx *gin.Context) {
		ctx.String(http.StatusOK, "hello world!")
	})
	app.Start()
}

配置文件app.yaml

service:
  appName: ngo-demo
  clusterName: ngo-demo-local
httpServer:
  port: 8080

更多示例

使用文档

问题反馈

对应bug上报、问题咨询和讨论,可以提交issue

About

Ngo是由网易传媒基础技术团队开源的一个类似Java Spring Boot的框架,全部使用Go语言开发,做到快速开发应用

License:Apache License 2.0


Languages

Language:Go 98.6%Language:Shell 0.9%Language:Dockerfile 0.4%Language:Makefile 0.2%Language:Assembly 0.0%