LCN自动补偿
1当出现需要补偿的数据的时候,LCN将请求tm.compensate.notifyUrl配置的通知地址,
请求补偿的样例数据格式:
{"groupId":"TtQxTwJP","action":"compensate","json":"{"address":"133.133.5.100:8081","className":"com.example.demo.service.impl.DemoServiceImpl","currentTime":1511356150413,"data":"C5IBLWNvbS5leGFtcGxlLmRlbW8uc2VydmljZS5pbXBsLkRlbW9TZXJ2aWNlSW1wbAwSBHNhdmUbehBqYXZhLmxhbmcuT2JqZWN0GAAQARwjeg9qYXZhLmxhbmcuQ2xhc3MYABABJCo/cHVibGljIGludCBjb20uZXhhbXBsZS5kZW1vLnNlcnZpY2UuaW1wbC5EZW1vU2VydmljZUltcGwuc2F2ZSgp","groupId":"TtQxTwJP","methodStr":"public int com.example.demo.service.impl.DemoServiceImpl.save()","model":"demo1","state":0,"time":36,"txGroup":{"groupId":"TtQxTwJP","hasOver":1,"isCompensate":0,"list":[{"address":"133.133.5.100:7802","isCompensate":0,"isGroup":0,"kid":"wnlEJoSl","methodStr":"public int com.example.demo.service.impl.DemoServiceImpl.save()","model":"demo2","modelIpAddress":"133.133.5.100:8082","channelAddress":"/133.133.5.100:64153","notify":1,"uniqueKey":"bc13881a5d2ab2ace89ae5d34d608447"}],"nowTime":0,"startTime":1511356150379,"state":1},"uniqueKey":"be6eea31e382f1f0878d07cef319e4d7"}"}
2 tm.compensate.notifyUrl的请求地址处理完后,响应给LCN结果(SUCCESS)
请求补偿的返回数据样例数据格式:
SUCCESS
3 如果没有开启自动补偿,那么到此结束,如果开启了自动补偿(tm.compensate.auto=true),那么LCN会对有问题的部分进行自动补偿(自己理解是去重新调用有问题的模块),然后再次通过tm.compensate.notifyUrl告诉业务方自动补偿的结果
请求补偿结果通知的样例数据格式
{"resState":true,"groupId":"TtQxTwJP","action":"notify"}