关于最近服务不稳定的说明

昨天(2018年11月28日)由于网络不稳定,导致大量短信转发失败,最后APP卡死,无法接收短信。

2018年11月27日晚上12点到2018年11月28日开始网络不稳定,ping经常出现丢包,导致手机APP卡死,重启APP之后,运行很短的时间仍然卡死。

之后网络改用手机热点,APP卡死的情况解除,问题解决。

出现这个问题的一些感想:

1、现在才搞明白在网络通信中异步的重要性,由于这个APP使用的是同步转发,网络不稳定,导致转发数据一直转发不出去,界面整个卡死,后面来的短信进来之后调用相同方法导致死锁,最终所有短信无法发送。如果改用异步的方式,设置超时时间和重发次数,如果在规定时间内和超过重发次数,无法发送数据直接丢弃。不至于界面卡死和所有数据无法发送。

2、对于异步和同步有更深刻的认识。

3、死锁的一些认识。

4、网络由于各种原因导致不稳定和丢包严重,对于所有在网络上发送的数据要考虑这些不稳定因素。



5、敬畏每一行代码:

当初在写这个APP的时候,使用的是同步,之后通过Android Studio编译,提示网络发送数据必须使用异步的方式,但是我觉的异步发送数据太麻烦,通过其他的方式改成了同步发送数据,现在问题还是暴露出来了。

问题代码

这一行代码导致了此次事故。

事后的一些预防及改进措施:

1、网络冗余:如果网络稳定,本次事故不会发生;

2、在发送数据设置超时和重试次数;

3、修改代码,使用异步的方式发送数据,避免界面卡死,从而导致整个手机卡死。

每次出现的事故都使自己进步,对于代码的一些功能有更深刻的认识。

将来的路还很长,还要不断学习,任何时候都不要失去一颗求知的心。

返回顶部