Create & Init Project...

This commit is contained in:
2019-04-22 18:49:16 +08:00
commit fc4fa37393
25440 changed files with 4054998 additions and 0 deletions

View File

@@ -0,0 +1,47 @@
package(default_visibility = ["//visibility:public"])
load(
"@io_bazel_rules_go//go:def.bzl",
"go_binary",
"go_library",
)
go_binary(
name = "cmd",
embed = [":go_default_library"],
tags = ["automanaged"],
)
go_library(
name = "go_default_library",
srcs = ["main.go"],
importpath = "go-common/app/service/main/broadcast/cmd",
tags = ["automanaged"],
visibility = ["//visibility:public"],
deps = [
"//app/service/main/broadcast/server/grpc:go_default_library",
"//app/service/main/broadcast/server/http:go_default_library",
"//app/service/main/broadcast/service:go_default_library",
"//library/conf/env:go_default_library",
"//library/conf/paladin:go_default_library",
"//library/ecode/tip:go_default_library",
"//library/log:go_default_library",
"//library/naming:go_default_library",
"//library/naming/discovery:go_default_library",
"//library/net/ip:go_default_library",
],
)
filegroup(
name = "package-srcs",
srcs = glob(["**"]),
tags = ["automanaged"],
visibility = ["//visibility:private"],
)
filegroup(
name = "all-srcs",
srcs = [":package-srcs"],
tags = ["automanaged"],
visibility = ["//visibility:public"],
)

View File

@@ -0,0 +1,26 @@
httpToken = "uat"
redisExpire = "30m"
[regions]
"bj" = ["北京","天津","河北","山东","山西","内蒙古","辽宁","吉林","黑龙江","甘肃","宁夏","新疆"]
"sh" = ["上海","江苏","浙江","安徽","江西","湖北","重庆","陕西","青海","河南","台湾"]
"gz" = ["广东","福建","广西","海南","湖南","四川","贵州","云南","西藏","香港","澳门"]
[server]
domain = "broadcast.chat.bilibili.com"
hostDomain = ".biliapi.com"
heartbeat = "30s"
heartbeatMax = 3
tcpPort = 7821
wsPort = 7822
wssPort = 7823
regionWeight = 1.5
[backoff]
maxDelay = 120
baseDelay = 3
factor = 1.6
jitter = 0.2
[log]
dir = "/data/log/broadcast-service"

View File

@@ -0,0 +1,16 @@
[push]
key = "170e302355453683"
secret = "3d0e8db7bed0503949e545a469789279"
group = "BroadcastJob-MainCommunity-P"
topic = "BroadcastJob-T"
action ="pub"
name = "broadcast/service"
proto = "tcp"
addr = "172.18.33.50:6205"
idle = 2
active = 5
dialTimeout = "1s"
readTimeout = "1s"
writeTimeout = "1s"
idleTimeout = "10s"
expire = "1h"

View File

@@ -0,0 +1,7 @@
[client]
dial = "1s"
timeout = "1s"
[server]
addr = "0.0.0.0:7839"
timeout = "1s"

View File

@@ -0,0 +1,3 @@
[server]
addr = "0.0.0.0:7831"
timeout = "1s"

View File

@@ -0,0 +1,5 @@
[stats]
taskID = "001482"
proto = "tcp"
addr = "172.18.33.125:15140"
chanSize = 10240

View File

@@ -0,0 +1,11 @@
[push]
name = "broadcast/push"
proto = "tcp"
addr = "172.22.33.126:6379"
idle = 32
active = 1024
dialTimeout = "1s"
readTimeout = "1s"
writeTimeout = "1s"
idleTimeout = "10s"
expire = "1h"

View File

@@ -0,0 +1,96 @@
package main
import (
"context"
"flag"
"os"
"os/signal"
"syscall"
"time"
server "go-common/app/service/main/broadcast/server/grpc"
"go-common/app/service/main/broadcast/server/http"
"go-common/app/service/main/broadcast/service"
"go-common/library/conf/env"
"go-common/library/conf/paladin"
ecode "go-common/library/ecode/tip"
"go-common/library/log"
"go-common/library/naming"
"go-common/library/naming/discovery"
"go-common/library/net/ip"
)
const (
ver = "v1.4.4"
)
func main() {
flag.Parse()
if err := paladin.Init(); err != nil {
panic(err)
}
var (
ac struct {
Discovery *discovery.Config
}
)
if err := paladin.Get("application.toml").UnmarshalTOML(&ac); err != nil {
if err != paladin.ErrNotExist {
panic(err)
}
}
log.Init(nil)
defer log.Close()
log.Info("broadcast-service %s start", ver)
// use internal discovery
dis := discovery.New(ac.Discovery)
// new a service
srv := service.New(dis)
ecode.Init(nil)
http.Init(srv)
// grpc server
rpcSrv, rpcPort := server.New(srv)
rpcSrv.Start()
// register discovery
var (
err error
cancel context.CancelFunc
)
if env.IP == "" {
ipAddr := ip.InternalIP()
// broadcast discovery
ins := &naming.Instance{
Zone: env.Zone,
Env: env.DeployEnv,
Hostname: env.Hostname,
AppID: "push.service.broadcast",
Addrs: []string{
"grpc://" + ipAddr + ":" + rpcPort,
},
}
cancel, err = dis.Register(context.Background(), ins)
if err != nil {
panic(err)
}
}
c := make(chan os.Signal, 1)
signal.Notify(c, syscall.SIGHUP, syscall.SIGQUIT, syscall.SIGTERM, syscall.SIGINT)
for {
s := <-c
log.Info("broadcast-service get a signal %s", s.String())
switch s {
case syscall.SIGQUIT, syscall.SIGTERM, syscall.SIGINT:
log.Info("broadcast-service %s exit", ver)
if cancel != nil {
cancel()
}
rpcSrv.Shutdown(context.Background())
time.Sleep(time.Second * 2)
srv.Close()
return
case syscall.SIGHUP:
default:
return
}
}
}