Merge branch 'dev' of http://git.legu.cc/liwei_3d/go_dreamfactory into dev
This commit is contained in:
commit
713c2e3415
@ -17,6 +17,8 @@ import (
|
||||
"go_dreamfactory/sys/configure"
|
||||
"go_dreamfactory/sys/db"
|
||||
"os"
|
||||
"os/signal"
|
||||
"syscall"
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
@ -97,7 +99,27 @@ func Test_Comment(t *testing.T) {
|
||||
fmt.Println(err)
|
||||
return
|
||||
} else {
|
||||
defer connect.Close()
|
||||
|
||||
go func() {
|
||||
var (
|
||||
data []byte
|
||||
msg *pb.BattleRpcMessage = &pb.BattleRpcMessage{}
|
||||
err error
|
||||
)
|
||||
locp:
|
||||
for {
|
||||
if _, data, err = connect.ReadMessage(); err != nil {
|
||||
fmt.Println(err)
|
||||
break locp
|
||||
}
|
||||
if err = proto.Unmarshal(data, msg); err != nil {
|
||||
fmt.Println(err)
|
||||
break locp
|
||||
}
|
||||
fmt.Println(msg)
|
||||
}
|
||||
}()
|
||||
|
||||
msg := &pb.BattleRpcMessage{
|
||||
Rid: 1,
|
||||
Method: "test",
|
||||
@ -105,5 +127,18 @@ func Test_Comment(t *testing.T) {
|
||||
msg.Data, _ = anypb.New(&pb.BattleTestMessage{})
|
||||
data, _ := proto.Marshal(msg)
|
||||
connect.WriteMessage(websocket.BinaryMessage, data)
|
||||
//监听外部关闭服务信号
|
||||
c := make(chan os.Signal, 1)
|
||||
//添加进程结束信号
|
||||
signal.Notify(c,
|
||||
os.Interrupt, //退出信号 ctrl+c退出
|
||||
syscall.SIGHUP, //终端控制进程结束(终端连接断开)
|
||||
syscall.SIGINT, //用户发送INTR字符(Ctrl+C)触发
|
||||
syscall.SIGTERM, //结束程序(可以被捕获、阻塞或忽略)
|
||||
syscall.SIGQUIT) //用户发送QUIT字符(Ctrl+/)触发
|
||||
select {
|
||||
case sig := <-c:
|
||||
fmt.Printf("signal = %v\n", sig)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -58,6 +58,7 @@ func (this *apiComp) ChallengeReceive(session comm.IUserSession, req *pb.CombatC
|
||||
}
|
||||
|
||||
this.module.DispenseRes(session, manster.Award, true)
|
||||
pass = true
|
||||
for _, v := range level.Passdroplist {
|
||||
ispass := false
|
||||
for _, v1 := range info.Passdrop {
|
||||
|
@ -198,9 +198,16 @@ func (this *Library) AddHeroFetterData(uid, heroConfId string) (code pb.ErrorCod
|
||||
obj.Hero[k] = 1
|
||||
// 重新计算最低等级
|
||||
var minLv int32
|
||||
for _, v := range obj.Hero {
|
||||
if minLv < v {
|
||||
minLv = v
|
||||
conf := this.configure.GetLibraryFetter(obj.Fid, 1)
|
||||
list := this.GetHeroFetterList(uid)
|
||||
for _, v1 := range conf.Hid {
|
||||
for _, v := range list {
|
||||
if v.Heroid == v1 {
|
||||
if minLv < v.Favorlv {
|
||||
minLv = v.Favorlv
|
||||
}
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
obj.Fetterlv = minLv
|
||||
@ -210,7 +217,6 @@ func (this *Library) AddHeroFetterData(uid, heroConfId string) (code pb.ErrorCod
|
||||
mapData["fetterlv"] = obj.Fetterlv
|
||||
this.modelLibrary.modifyLibraryDataByObjId(uid, obj.Id, mapData)
|
||||
rsp.Data = append(rsp.Data, obj)
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -8,8 +8,6 @@ import (
|
||||
"io"
|
||||
"os"
|
||||
|
||||
// zlog "go_dreamfactory/lego/sys/log"
|
||||
|
||||
"go_dreamfactory/pb"
|
||||
|
||||
"github.com/gorilla/websocket"
|
||||
@ -170,63 +168,37 @@ func (r *RobotFormatter) Format(entry *logrus.Entry) ([]byte, error) {
|
||||
return b.Bytes(), nil
|
||||
}
|
||||
|
||||
func (r *Robot) ExecSendMsg(mainType, subType string, msg proto.Message) {
|
||||
|
||||
if msg != nil {
|
||||
head := &pb.UserMessage{MainType: mainType, SubType: subType}
|
||||
err := r.SendToClient(head, msg)
|
||||
if err != nil {
|
||||
zlog.Errorf("send to client err:%v", err)
|
||||
}
|
||||
r.messageRsp(mainType, subType)
|
||||
}
|
||||
}
|
||||
|
||||
func (r *Robot) MessageRsp() {
|
||||
func (r *Robot) MessageRsp(mainType, subType string) bool {
|
||||
|
||||
var msg *pb.UserMessage = &pb.UserMessage{}
|
||||
_, data, err := r.ws.ReadMessage()
|
||||
if err != nil {
|
||||
zlog.Fatalf("readMessage err:%v", err)
|
||||
fmt.Printf("readMessage err:%v", err)
|
||||
return false
|
||||
}
|
||||
|
||||
if err = proto.Unmarshal(data, msg); err != nil {
|
||||
zlog.Fatalf("unmarshal err:%v", err)
|
||||
fmt.Printf("unmarshal err:%v", err)
|
||||
}
|
||||
//fmt.Printf("接收消息=====msg.MainType = %s,msg.SubType = %s\n", msg.MainType, msg.SubType)
|
||||
if msg.MainType == "chat" && msg.SubType == "message" {
|
||||
resp := &pb.ChatMessagePush{}
|
||||
if !comm.ProtoUnmarshal(msg, resp) {
|
||||
return
|
||||
return false
|
||||
}
|
||||
zlog.Fatalf("接收消息=====resp:%v", resp.Chat)
|
||||
|
||||
return false
|
||||
//fmt.Printf("接收消息=====resp:%v\n", resp.Chat)
|
||||
} else if msg.MainType == mainType && msg.SubType == subType {
|
||||
resp := &pb.UserLoginResp{}
|
||||
if !comm.ProtoUnmarshal(msg, resp) {
|
||||
return false
|
||||
}
|
||||
|
||||
//fmt.Printf("接收消息=====loginData:%v,userExpand:%v\n", resp.Data, resp.Ex)
|
||||
return true
|
||||
}
|
||||
return false
|
||||
}
|
||||
func (r *Robot) messageRsp(mainType, subType string) {
|
||||
|
||||
var msg *pb.UserMessage = &pb.UserMessage{}
|
||||
_, data, err := r.ws.ReadMessage()
|
||||
if err != nil {
|
||||
zlog.Fatalf("readMessage err:%v", err)
|
||||
}
|
||||
|
||||
if err = proto.Unmarshal(data, msg); err != nil {
|
||||
zlog.Fatalf("unmarshal err:%v", err)
|
||||
}
|
||||
|
||||
if msg.MainType == mainType &&
|
||||
msg.SubType == subType {
|
||||
rsp := &pb.UserLoginResp{}
|
||||
if !comm.ProtoUnmarshal(msg, rsp) {
|
||||
return
|
||||
}
|
||||
if msg.MainType == "user" && msg.SubType == "login" {
|
||||
r.loginCallback(rsp)
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
func (r *Robot) CloseHandler() {
|
||||
|
||||
r.ws.Close()
|
||||
|
@ -80,19 +80,13 @@ func webSocketRequest(chanID uint64, ch chan<- *model.RequestResults, i uint64,
|
||||
Sid: "dfmxf",
|
||||
}
|
||||
r.SendToClient(head, req)
|
||||
r.MessageRsp()
|
||||
// err := ws.Write([]byte(`{"seq":"` + seq + `","cmd":"ping","data":{}}`))
|
||||
// if err != nil {
|
||||
// errCode = model.RequestErr // 请求错误
|
||||
// } else {
|
||||
// msg, err = ws.Read()
|
||||
// if err != nil {
|
||||
// errCode = model.ParseError
|
||||
// fmt.Println("读取数据 失败~")
|
||||
// } else {
|
||||
// errCode, isSucceed = request.GetVerifyWebSocket()(request, seq, msg)
|
||||
// }
|
||||
// }
|
||||
for {
|
||||
if r.MessageRsp("user", "login") {
|
||||
isSucceed = true
|
||||
break
|
||||
}
|
||||
}
|
||||
|
||||
requestTime := uint64(helper.DiffNano(startTime))
|
||||
requestResults := &model.RequestResults{
|
||||
Time: requestTime,
|
||||
|
@ -72,8 +72,8 @@ func main() {
|
||||
//go run .\main.go -c 10 -n 10 -u ws://10.0.5.101:7891/gateway
|
||||
concurrency = 10
|
||||
totalNumber = 10
|
||||
debugStr = "true"
|
||||
requestURL = "ws://10.0.5.194:7891/gateway"
|
||||
debugStr = "false"
|
||||
requestURL = "ws://10.0.0.9:7891/gateway"
|
||||
if concurrency == 0 || totalNumber == 0 || (requestURL == "" && path == "") {
|
||||
fmt.Printf("示例: go run main.go -c 1 -n 1 -u https://www.baidu.com/ \n")
|
||||
fmt.Printf("压测地址或curl路径必填 \n")
|
||||
|
Loading…
Reference in New Issue
Block a user