我正在开发将高度依赖Sabre API的应用程序。当大约一百万用户同时访问API时,应用程序的关键因素将是性能。与Saber API支持人员交谈后,他们告诉我的是,他们一次最多提供50个会话令牌,因此您必须在结束时管理会话。这使我的问题无法解决-他们将能够处理一百万个并行请求吗?因此,基本上我们将能够使用相同的会话令牌发出多个请求,除非该令牌过期了?
请帮助我理解他们的回应。以下是我在Sabre API支持下进行的一系列电子邮件对话。
你好,卡拉姆,
限制将是为PCC设置的同时会话。默认情况下,您最多可以在CERT中创建50个并发令牌(50个并发会话),但您的问题的答案为否,因此不会影响我们这边的处理时间。
问候,
您好塞巴斯蒂安非常感谢您与我在一起并帮助我解决这个问题。
因此,正如您提到的,我们一次可以拥有50个会话令牌,是否可以使用一个会话令牌同时发出1个以上的同时请求(异步请求)?例如,我们获得一个会话令牌并将其存储在我们的末尾,并使用它发出多个请求。
我之所以这样问是因为,如果不是,那将意味着我们一次只能发出50个并行请求(每个会话令牌1个请求)。如果是这样,那么我们可能必须实现一个请求队列,这将延迟最终用户的响应。
谢谢
你好,卡拉姆,
请在下面查看我对您的查询的回答:
因此,正如您提到的,我们一次可以拥有50个会话令牌,是否可以使用一个会话令牌同时发出1个以上的同时请求(异步请求)?例如,我们获得一个会话令牌并将其存储在我们的末尾,并使用它发出多个请求。
不可能,这实际上不是Saber Web Services的相关行为,而是Saber主机的工作方式。Saber是一个同步系统,发送请求后,您需要等到收到响应后才能运行第二个调用。否则,您将收到诸如“ PREVIOUS ENTRY ACTIVE”或类似的消息。
我之所以这样问是因为,如果不是,那将意味着我们一次只能发出50个并行请求(每个会话令牌1个请求)。如果是这样,那么我们可能必须实现一个请求队列,这将延迟最终用户的响应。
这将取决于会话管理器和客户的需求,但我们的大多数客户不需要同时消耗1000个会话。无论如何,一旦您成为Web服务订户,就可以定义并向客户主管请求最能满足您需求的令牌数量。
希望这可以帮助!
最好的祝福,
没错,您不能对多个并行请求使用相同的会话/令牌...(Sabre保持会话状态,这会影响下一个请求的结果)
他们建议创建一个会话管理器,以便您拥有会话队列并使用它们,并在需要时“忽略”它们。这样,您可以拥有仅用于查询的会话以及用于触摸PNR的会话,还可以管理自己的到期时间或“保持活动”例程。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句