在Domino(lotusscript)中缓慢的web服务?

时间:2012-04-26 17:50:38

标签: lotus-domino

我写了第一个网络服务。我将Lotus脚本用于提供者和消费者。

Web服务提供者功能函数查找下一个序列号并将其提供给消费者,然后递增并保存下一个呼叫的值。

一切都很好,除非它很慢。从消费者那里调用该函数可能需要10秒钟而且很少超过7.

我们的服务器没有明显的性能问题。正在从工作站上运行的Notes客户端中的代理调用使用者代码。服务器和工作站都运行Notes 8.5.3。

由于担心查找数字的代码变慢,暂时修改了提供程序函数以返回一个值。

以下是具有修改功能的提供程序的代码。

Class SequenceNumberService
    Function getNextSequenceNumberStandard(dbname As String, key As String) As Long
            getNextSequenceNumberStandard = 100  'Temporary test
            Exit Function  'Temporary test
            getNextSequenceNumberStandard = GetNextSeqNumber(dbname+key)        
    End Function
End Class

以下是消费者的代码:

%INCLUDE "lsxsd.lss"
Class SequenceNumberService As PortTypeBase

Sub NEW
    Call Service.Initialize   ("UrnDefaultNamespaceSequenceNumberServiceService", _
    "SequenceNumberServiceService.Domino", "http://pncpghd38 /ftg/sequence.nsf/GetNextSequenceNumber?OpenWebService" , _
    "SequenceNumberService")
End Sub

Function GETNEXTSEQUENCENUMBERSTANDARD(DBNAME As String, KEY As String) As Long
    Let GETNEXTSEQUENCENUMBERSTANDARD = Service.Invoke("GETNEXTSEQUENCENUMBERSTANDARD", DBNAME, KEY)
End Function
End Class

我将代理程序置于调试模式,看起来它是一直在调用的Invoke。

我们尝试使用SOAPUI来访问同一个Web服务,并且该调用几乎是即时的。

0 个答案:

没有答案