-
Notifications
You must be signed in to change notification settings - Fork 4.2k
endless loop的问题请教 #1742
Replies: 1 comment · 16 replies
-
从你的 log 看,卡住的是 1b 不是 1d ,这行 log 是在发给 1b 的消息超时没能被处理时输出的。这种情况只发生在 1b 在干别的事情,无法结束上一次的消息处理,而新消息进来也无法再处理了。 或者是另外一种相当罕见的情况:工作线程忙于做其它的事情,1b 无法被调度器调度。 |
Beta Was this translation helpful? Give feedback.
All reactions
-
另外一个比较简单的调试方法是,如果现场发现卡住,立刻 gdb attach 进去看工作线程在干什么。如果 worker 为 1 ,那么卡住的时候应该是没有 log 的,等到 endless loop 的 log 出来应该已经不卡了。 |
Beta Was this translation helpful? Give feedback.
All reactions
-
云风大佬,在1CPU的服务器上,将工作线程数写成2,目前跑了两天没有再出现endless loop,还需要再观察一段时间。 |
Beta Was this translation helpful? Give feedback.
All reactions
-
跑了一段时间没出现endless loop,然后今天又出现了,十五分钟左右自动恢复,在一台2cpu 4G内存,独享型得阿里云ECS上面,已经按照云风得指导,部署了一个skynet进程,工作线程开了两个。下面是日志,跟之前的不一样了,现在感觉像是整个skynet进程不再执行了。出问题的时候,我telnet无法连接到debug_console。还请云风帮忙看看,我从哪里进一步处理一下会有效果,另外,26日出了问题之后,到5.3日,又没有出过问题了。
这里省略了一些redis的参数输出。接下来就没有日志了,一直到15分钟后出现endless loop,这里省略了部分endless的日志,总共是374条。
26/04/23 12:01:08.57 [:00000000] A message from [ :00000000 ] to [ :0000000e ] maybe in an endless loop (version = 58925) 看日志,好像是后面的一些日志其实都已经是之前已经处理完了的,只不过是skynet恢复之后,陆续写到了文件系统上,所以时间都是12:01这个时间段的。
|
Beta Was this translation helpful? Give feedback.
All reactions
-
我觉得如果完全卡死,你需要 gdb attach 进去看卡在哪里,光靠 log 无法分析。 |
Beta Was this translation helpful? Give feedback.
All reactions
-
收到,这个问题也是很奇葩,已经10天没有发生了 |
Beta Was this translation helpful? Give feedback.
-
服务器四台,login的2cpu 8G,安装了nginx,redis,mysql,还跑两个springboot程序,skynet的login服务主要跑这个服务器上;game服两个,每个都是1CPU 2G,分别部署了两个game服,主要处理玩家的协议,一个arena服,主要处理擂台相关的协议,game转发给arena,也是1CPU 2G。
测试阶段玩家在线只有100左右。
昨天大概21:54 到 10:10左右,两个Game服都卡住了,玩家无法登录,无法操作,10:10之后恢复正常,没有做任何操作自己恢复了。看日志两个服务都是在同一个时间点卡住的,难道跟redis有关系吗,下面是日志,请大佬帮忙给分析一下。
dbredis是一个master-slave的服务器,1b会转发给四个slave,四个slave每个与redis建立连接,处理redis相关的请求。
redis的日志,我看了一些,感觉出问题的时候,redis就没有什么请求了。
game1的卡住的日志,我分析日志是不是game的1d这个redis的进程卡住了,一直没有能回应给1b
后面从22:10:17之后恢复正常了。
game2卡住的日志
不知道是不是dbredis的代码写的有问题,我把dbredis的也发出来,lua用了一年,可能水平还比较低,请大佬给把把关。
Beta Was this translation helpful? Give feedback.
All reactions