如何创建单例asmx服务

时间:2009-07-02 00:46:18

标签: asp.net web-services asmx

如何创建单例asmx webservice? (请不要说使用WCF和WWF:D)

5 个答案:

答案 0 :(得分:3)

简答:你不想。

长答案:对.ASMX的请求将不确定地使用新的工作线程,因此即使您使用单例模式,也不会知道单例的生命。

也许详细说明你想做什么,我可以引导你走向最好的模式。

答案 1 :(得分:3)

我不确定单例如何解决您的性能问题,除非您在实例中缓存数据。在这种情况下,我同意上述在服务和数据库之间引入缓存的建议。这个数据有多可变?

答案 2 :(得分:3)

我不会建议WCF,但只是因为你很好地问我们。

我会提到您已经找到了使用WCF而不是ASMX的另一个原因。你可能想保留一份清单。

您可能还希望保留一份通过WCF使用ASMX的原因列表。您可能甚至想要使用相同的列表,原因是不升级到.NET 3.5 SP1。这不会很长。

当管理层想知道为什么某些事情需要很长时间才能完成,当你想要将它们发送给你的列表时,可能会有一段时间。

答案 3 :(得分:1)

你可以使用ashx(HttpHandler)。实现IHttpHandler并将IsReusable设置为false。

http://neilkilbride.blogspot.com/2008/01/ihttphandler-isreusable-property.html

答案 4 :(得分:1)

根据您的目的,您可以将引擎编写为可由ASMX调用的任何线程服务访问的单例。