首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Paypal自适应支付响应非常慢

Paypal自适应支付响应非常慢
EN

Stack Overflow用户
提问于 2019-08-06 18:45:53
回答 1查看 212关注 0票数 1

当我们尝试联系PayPal自适应付款终结点时,请访问:https://svcs.paypal.com/AdaptivePayments/Pay (用于显式链接付款) https://svcs.paypal.com/AdaptivePayments/Preapproval (用于预先批准的付款)

自7月下半月以来,我们从paypal得到的响应非常慢,超过50秒。在响应到达后,一切正常,但我们正在调查这个奇怪的时间响应,因为它给我们的用户带来了大量的购物车。

首先,我们检查了对端点的SOAP调用和请求信封,所有东西(在过去6年中总是正常工作)看起来都很正常。我们刚刚在soap客户端请求中添加了一个“压缩”=> SOAP_COMPRESSION_ACCEPT行,因为现在似乎需要它(我们以前从未使用过它,但是自从7月份以来,我们得到了一个未知的内容编码错误,没有这一行)。无论如何,即使在这个补丁之前,从7月初/下半月开始就存在响应缓慢的问题。

然后我们测试了数据库中是否有一些损坏的表,但一切正常。

然后,我们深入检查了在对paypal端点的请求和响应之间做了什么,但除了打开调用并等待响应之外,我们什么也没做。

我们首先定义我们的头,然后进行调用:

代码语言:javascript
运行
复制
    $soapClient = new SoapClient($this->wsdl,
                                    array('location' => $this->EndPointURL."AdaptivePayments/Preapproval/", 
                                          'uri' => "urn:Preapproval",
                                          'soap_version' => SOAP_1_1, 
                                          'trace' => 1, //debugging option

    'compression' => SOAP_COMPRESSION_ACCEPT,

    'stream_context' => $ctx)); //adding the stream context option containing the http headers

    $response = objectToArray($soapClient->Preapproval($params));

    } catch (SoapFault $e) { 
        $response = objectToArray($e);
    }

    return $response;

}

这件事与支付操作非常相似,我们在paypal响应中也有相同的50-52秒延迟。

在正常的行为中,我们确实希望在1-5秒之间得到响应。我们认为这是一个关于paypal服务器的问题,我们正在等待MTS的答复,但同时欢迎任何建议。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-08-11 18:07:30

经过几周的故障排除和无数次尝试从API那里获得任何建议(没有任何有用的建议),我们终于弄清楚了真正发生了什么,以及如何修复它(不是一个快速简单的修复),我将为少数可能在soap请求到自适应支付PayPal endopoint时遇到响应问题的人发布这个解决方案。

首先,我们努力检查由于防火墙、网络问题或编码而导致的手头没有任何问题,我们在生产(实时)环境中执行了大量测试(但实际)订单,既使用用于连锁支付的自适应支付应用编程接口的Pay操作,也使用预审批操作,并且我们声明,我们正在进行的任何svcs端点连接尝试的49秒响应是由于PayPal服务器配置上的某些东西,一些(我们不知道的)特定于SOAP连接的东西(与后续数据信封无关)。

我们已经重写了很大一部分代码,从SOAP连接切换到cURL连接,一切都以1-3秒的顺序以良好的时间响应重新开始工作,完全可以再次接受。

所有这一切都是在生产环境中进行的,不幸的是,所有这些都没有来自PayPal状态网站的任何建议,也没有来自机械师和应用程序开发人员的通知,也没有来自MTS团队的任何建议。

因此,给PayPal技术团队的最后一个建议是,PayPal自适应支付svcs端点服务器配置发生了一些变化,大约从2019年7月10日到20日(不幸的是,我们不能说明确切的日期)停止,以快速响应SOAP请求,并开始进行非常长的响应(总是49-51秒)。

将整个代码改为通过cURL打开连接并传输数据,而不是通过SOAP。我们已经解决了这个问题,但这是一次技术冒险,因为没有人在这方面给我们任何建议。这是一个遗憾。

希望这能对某些人有用,对我们来说是噩梦般的一周。

干杯,菲尔。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57374284

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档