Kaynağa Gözat

负载同步

zhengtao 7 ay önce
ebeveyn
işleme
27f0eab604

+ 15 - 0
game/game_cluster/nodes/web/controller/controller.go

@@ -153,6 +153,19 @@ func (p *Controller) Auth(c *mhayaGin.Context) (*token.Token, int32) {
 			mhayaLogger.Warnf("[Auth] result set token err. result = %s", newToken)
 			return nil, code.AccountTokenValidateFail
 		}
+
+		ctl, ok := p.GetChildActor(newToken.PlayerID)
+		if !ok {
+			mhayaLogger.Warnf("[Auth] result set token err. result = %s", newToken)
+			return nil, code.AccountTokenValidateFail
+		}
+		ctl.Call(userToken.TargetPath, "sessionClose", nil)
+
+		errCode := ctl.Call(newToken.TargetPath, "login", newToken)
+		if code.IsFail(errCode) {
+			mhayaLogger.Warnf("[Auth] result set token err. result = %s", newToken)
+			return nil, code.AccountTokenValidateFail
+		}
 	}
 
 	return newToken, code.OK
@@ -263,6 +276,8 @@ func (p *Controller) auth(c *mhayaGin.Context) {
 		if len(oldToken) > 0 {
 			userToken, ok := token.DecodeToken(oldToken)
 			if ok == false {
+				mhayaLogger.Warnf("callback result set token err. result = %s", result)
+				code.RenderResult(c, code.LoginError)
 				return
 			}
 			//如果分配在不同节点需要断开原来服务器

+ 1 - 1
game/game_cluster/nodes/web/sdk/quick_sdk.go

@@ -96,7 +96,7 @@ func (p quickSdk) Login(config *data.SdkConfigRow, params Params, callback Callb
 }
 
 func (p quickSdk) Reconnect(token *token.Token) (int32, *token.Token) {
-	list := p.app.Discovery().ListByType("db")
+	list := p.app.Discovery().ListByType("game")
 	targetPath, err := cfacade.ToActorPath(token.TargetPath)
 	if err != nil {
 		clog.Warnf("[Reconnect] Target path error. targetPath = %v, error = %v", token.TargetPath, err)

+ 1 - 1
game/game_cluster/robot_client/main.go

@@ -17,7 +17,7 @@ import (
 func main() {
 
 	// 定义命令行标志
-	userOffset := flag.Int("userOffset", 200000, "用户偏移量")
+	userOffset := flag.Int("userOffset", 500000, "用户偏移量")
 	count := flag.Int("count", 200000, "请求总数")
 	qps := flag.Int("qps", 500, "最大并发数")
 	url := flag.String("url", "http://127.0.0.1:20000", "请求url")