gorocket

module
v1.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 2, 2023 License: MIT

README

a quickly build GRPC or HTTP server framework

main features:

  • grpc
  • http
  • service register

registration center:

  • consul
  • etcd (todo)
  • nacos (todo)

Getting gorocket

Prerequisites
  • Go: any one of the three latest major releases .
  • Go version >= 1.18
Getting gorocket

With Go module support, simply add the following import

import "github.com/duanshanghanqing/gorocket"

Otherwise, run the following Go command to install the gorocket package:

$ go get -u github.com/duanshanghanqing/gorocket
Run gorocket grpc server
package main

import (
	"google.golang.org/grpc"
	"log"
	"github.com/duanshanghanqing/gorocket/server/grpcserver"
)

func main() {
	server, err := grpcserver.New(
		grpcserver.WithServerOptionName("testgrpc"),
		grpcserver.WithServerOptionPost(8090), // default post 2345
		grpcserver.WithServerRegisterServer(func(server *grpc.Server) {
			// register your service
			// userpb.RegisterUserServer(server, user.NewUserServer())
		}),
	)

	if err != nil {
		log.Printf("err: %s", err.Error())
		return
	}

	if err = server.Run(); err != nil {
		log.Printf("err: %s", err.Error())
	}
}

Run gorocket http server
package main

import (
	"fmt"
	"github.com/gin-gonic/gin"
	"log"
	"net/http"
	"github.com/duanshanghanqing/gorocket/server/httpserver"
)

func main() {
	r := gin.Default()
	r.GET("/ping", func(c *gin.Context) {
		c.JSON(http.StatusOK, gin.H{
			"message": "pong",
		})
	})
	
	server, err := httpserver.New(
		httpserver.WithServerOptionName("testhttp"),
		httpserver.WithServerHttpServer(
			&http.Server{
				Addr:    fmt.Sprintf(":%d", 8091), // default post 3939
				Handler: r,
			},
		),
	)
	if err != nil {
		log.Printf("err: %s", err.Error())
		return
	}

	if err = server.Run(); err != nil {
		log.Printf("err: %s", err.Error())
	}
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL