Suds性能 - client.factory.create()耗时超过2分钟
我正在用 Suds 在Python中发送和接收SOAP消息。创建一个要通过SOAP信封发送的对象花费的时间非常长。
client = Client(wsdldict['Contact'], faults=True, headers=session) #takes ~5 seconds
lq1=client.factory.create("ns1:ListOfContactQuery") #takes ~130 seconds
这个WSDL文件比较大(1MB),但我不知道这是不是问题所在。Suds的性能在某个点上会下降吗?
1 个回答
6
SUDS在处理大型WSDL文件时性能会下降。我之前在使用Citrix NetScaler的SOAP API时也遇到过这个问题。
如果你能把WSDL文件过滤成只包含必要的命令,存储到硬盘上并在本地加载,或者利用SUDS的缓存功能,那么在创建新客户端时,你可以大幅度提高处理速度。