一次curl超时引发的项目问题思考

来源:互联网 发布:筛选后数据求种类 编辑:程序博客网 时间:2024/05/16 12:47

最近项目中遇到了一次curl超时,导致了用户操作写入失败的问题

1、curl超时怎样去追踪哪一个步骤导致超时

     php 超时原理:

             一次请求调用某个api出现超时的时候我们如何判定是在哪一个步骤超时了?

             1、网络原因,请求超时,服务端代码未执行,很容易判断,超时后,服务端无任何操作

             2、服务端执行超时,服务端代码已执行,但并未执行完已经超出设定的超时时间

                  针对第二种情况,要首先分析出服务端代码已经执行到哪一个步骤了,接着看一下将要执行却未执行的步骤是什么,分析出是不是该步骤导致超时,是则针对该步骤进行优化,不是则向前分析,判断出之前执行过的哪个步骤比较耗时,导致后边超时。


2、一次操作多次调用某个异步服务的处理方式

        当我们在一次操作中需要去多次调用一个TCP异步服务(有连接超时时间)的时候,如何尽可能地减少服务挂了对我们造成的影响

        我的理解是将这多次调用封装到一个api接口中,然后去异步调用一次,这样即使异步服务挂了,也只会连接超时一次。


3、一个服务我们主观判定不好用之后第一反应难道应该是弃用?

         最起码我不这么认为,我更倾向于去找出来是它真的不好用还是自己没有用好。


4、作为一个研发,我从来没想过推卸责任

      当在一个团队中,出现了一些问题,解决方案都还没出来,却有人已经开始想着推卸责任的时候,那一刻

,我真的很想离开这个团队。但或许我们更应该想的是如果我是团队管理人员,如何解决这种问题?

0 0