我有一个相当大的“旧”WCF 服务,有许多不同的方法。
这些方法中的大多数都是“正常”的,因此它们应该在 10 秒内回答,但是有几种方法(8 或 9)是长时间的过程,因此它们可能需要很长时间才能得到响应。
接收超时和发送超时设置为 00:40:00,以确保他们有足够的时间来完成这些过程。
问题是有时我们会遇到连接问题,并且“正常”方法需要很长时间才能崩溃......
他们都在同一个服务中,因为他们使用了一个非常大的模型,并且他们希望在每次调用中重用服务中的模型(没有 PersonsService.User 和 RobotsService.User... 因为它们是不同的同一个类服务)。
我想的第一个解决方案是用那些长流程创建一个不同的服务,并为正常服务设置一个短的超时时间......但由于模型的使用,我应该做很多改变......
有没有办法在每次通话中设置不同的超时时间?还是通过服务方式?无论如何我应该分块服务吗?
提前致谢!!