我有一个非常基本的 ASP.NET Web 服务。
它可以工作,但是第一次调用需要 10 秒 - 而后续调用会立即发生。
我意识到它是 JIT 编译的,因此我试图了解如何预编译事物以加快第一次调用。
到目前为止,这是我所做的。
网络服务文件是:HelloWorldService.cs:
using System.Web.Services;
namespace MyService
{
public class HelloWorldService: WebService
{
[WebMethod]
public string HelloWorld()
{
return "Hello World";
}
}
}
我已经编译了这个使用gmcs -target:library HelloWorldService.cs -r:System.Web.Services
我已将生成的HelloWorldService.dll
文件放在 webroot 的 /bin 目录中。
接下来,我创建了HelloWorld.asmx
-stub 文件,如下所示:
<%@WebService Language="C#" Class="MyService.HelloWorldService"%>
这可行,但如前所述,第一次调用需要 10-15 秒才能完成......尽管后续调用工作正常。
在研究过程中,我看到了您需要使用该sgen
实用程序来创建序列化 XML 文件的参考资料。
我通过运行使用了该文件:
sgen HelloWorldService.dll
它创建一个文件名HelloWorldService.XmlSerializers.dll
并将其也放入/bin
目录中。
然而,这些都没有帮助。
任何人都可以对此有所了解吗?