优化网络

This commit is contained in:
duanhf2012
2020-02-03 11:16:12 +08:00
parent 892fd26c5a
commit 8b909c4194
4 changed files with 30 additions and 18 deletions

View File

@@ -10,7 +10,6 @@
"ServiceList": [ "ServiceList": [
"HttpServerService", "HttpServerService",
"SubNet1_Service", "SubNet1_Service",
"SubNet1_Service1",
"TcpSocketPbService" "TcpSocketPbService"
], ],
"ClusterNode":["SubNet2.N_Node1","N_Node2"] "ClusterNode":["SubNet2.N_Node1","N_Node2"]

View File

@@ -10,7 +10,6 @@ import (
"github.com/duanhf2012/origin/originnode" "github.com/duanhf2012/origin/originnode"
"github.com/duanhf2012/origin/service" "github.com/duanhf2012/origin/service"
) )
type SubNet1_Service struct { type SubNet1_Service struct {
@@ -26,40 +25,38 @@ func (ws *SubNet1_Service) OnInit() error {
sysservice.DefaultTSPbService().RegConnectEvent(ws.ConnEventHandler) sysservice.DefaultTSPbService().RegConnectEvent(ws.ConnEventHandler)
sysservice.DefaultTSPbService().RegDisconnectEvent(ws.DisconnEventHandler) sysservice.DefaultTSPbService().RegDisconnectEvent(ws.DisconnEventHandler)
sysservice.DefaultTSPbService().RegExceptMessage(ws.ExceptMessage) sysservice.DefaultTSPbService().RegExceptMessage(ws.ExceptMessage)
sysservice.DefaultTSPbService().RegMessage(110,&msgpb.Test{},ws.MessageHandler) sysservice.DefaultTSPbService().RegMessage(110, &msgpb.Test{}, ws.MessageHandler)
return nil return nil
} }
//OnRun ... //OnRun ...
func (ws *SubNet1_Service) OnRun() bool { func (ws *SubNet1_Service) OnRun() bool {
time.Sleep(time.Second * 10)
time.Sleep(time.Second*10)
var cli network.TcpSocketClient var cli network.TcpSocketClient
cli.Connect("127.0.0.1:9004") cli.Connect("127.0.0.1:9004")
test := msgpb.Test{} test := msgpb.Test{}
test.AssistCount = proto.Int32(343) test.AssistCount = proto.Int32(343)
cli.SendMsg(110, &test)
cli.SendMsg(110, &test)
cli.SendMsg(110,&test)
cli.SendMsg(110,&test)
return false return false
} }
func (ws *SubNet1_Service) MessageHandler(pClient *network.SClient, msgtype uint16, msg proto.Message) {
func (ws *SubNet1_Service) MessageHandler(pClient *network.SClient,msgtype uint16,msg proto.Message){ fmt.Print("recv:",pClient.GetId(), "", msg,"\n")
fmt.Print(pClient.GetId(),"\n",msg) pClient.SendMsg(msgtype,msg)
}
func (ws *SubNet1_Service) ConnEventHandler (pClient *network.SClient){
} }
func (ws *SubNet1_Service) DisconnEventHandler (pClient *network.SClient){ func (ws *SubNet1_Service) ConnEventHandler(pClient *network.SClient) {
fmt.Print("connected..",pClient.GetId(),"\n")
} }
func (ws *SubNet1_Service) ExceptMessage(pClient *network.SClient,pPack *network.MsgBasePack,err error){ func (ws *SubNet1_Service) DisconnEventHandler(pClient *network.SClient) {
fmt.Print("disconnected..",pClient.GetId(),"\n")
} }
func (ws *SubNet1_Service) ExceptMessage(pClient *network.SClient, pPack *network.MsgBasePack, err error) {
fmt.Print("except..",pClient.GetId(),"",pPack,"\n")
}

View File

@@ -23,6 +23,7 @@ func (slf *TcpSocketClient) Connect(addr string) error{
} }
slf.conn = conn slf.conn = conn
// //
return nil return nil
} }

View File

@@ -5,6 +5,7 @@ import (
"encoding/binary" "encoding/binary"
"github.com/duanhf2012/origin/util" "github.com/duanhf2012/origin/util"
"github.com/duanhf2012/origin/service" "github.com/duanhf2012/origin/service"
"github.com/golang/protobuf/proto"
"io" "io"
"net" "net"
"unsafe" "unsafe"
@@ -210,6 +211,20 @@ func (slf *SClient) Send(pack *MsgBasePack){
slf.sendPack.Push(pack) slf.sendPack.Push(pack)
} }
func (slf *SClient) SendMsg(packtype uint16,message proto.Message) error{
var msg MsgBasePack
data,err := proto.Marshal(message)
if err != nil {
return err
}
msg.Make(packtype,data)
slf.sendPack.Push(&msg)
return nil
}
func (slf *SClient) onsend(){ func (slf *SClient) onsend(){
for { for {
pack := slf.sendPack.Pop() pack := slf.sendPack.Pop()