jt-20180528 / pro_document_mycat

项目文档记录,一些技术栈预研文档
2 stars 1 forks source link

mycat1.6.5测试读写分离问题汇总【2018-07-31~08-01夜间测试】 #34

Open lujunGit opened 6 years ago

lujunGit commented 6 years ago

1:关键字在日志文件中出现的个数统计: $ grep -oi 'exception' core-stdout-2018-07-31.log|wc -l 111

$ grep -oi 'error' core-stdout-2018-07-31.log|wc -l 41916

$ grep -oi 'exception' core-stdout-2018-08-01.log|wc -l 1759

$ grep -oi 'error' core-stdout-2018-08-01.log|wc -l 41653

2:kg下注出错: 001

007

3:生成期号重复的问题: 002

004

005

4:kg下注多次失败导致出现空指针: 006

006_1

lujunGit commented 6 years ago

解决: 1:kg下注出错,是因为betKG方法上添加了锁了事务,导致异步逻辑的事务执行时间较长,连接超时自 动关闭,出现错误,目前把事务注解注释掉,有待观察。 2:生成重复期号的问题,原因是第一次执行已经有了期号,第二次再次添加就会出错,目前使用指定 catch捕获到重复期号异常,不影响逻辑,只获取不处理。 3:多次下注失败导致空指针是因为,刚开盘还没有写入缓存期号,就开始投注,这是从缓存中无法获取到期号就报空指针异常,解决是,直接返回给用户,请稍后重试的提示。

lujunGit commented 6 years ago

1和3没有复现,2再次出现问题,已经查明原因:因为game_id=17的游戏期号很多大约2万多条,导致使用jpa一条一条保存入库耗时大于1分钟,而dubbo接口调用超过一分钟没有返回则会重新发起请求,导致重复记录,现已修改为村换部分在open接口调用前循环判断,并且只是在接口中就行拼接sql进行插入。

lujunGit commented 6 years ago

已经解决,并没有复现以上问题。