我正在使用SAP Connector Core库来使用RFC获取SAP数据,尽管我的更改在Kestrel服务器上工作得很好,但在IIS上却不起作用。
我正在使用从SAP网站下载的以下库。
我已经安装了ASP.NET Core Module/Hosting Bundle
并且在检查位置C:\Windows\System32\LogFiles\HTTPERR\httperr1.log
am处的日志时,
2023-03-10 02:36:26 ::1%0 53017 ::1%0 4430 HTTP/2 GET /home/GetSapData 25 - 4
Connection_Abandoned_By_ReqQueue PublishCode
2023-03-10 02:38:33 ::1%0 53017 ::1%0 4430 - - - - - - Timer_ConnectionIdle -
2023-03-10 02:41:26 ::1%0 53064 ::1%0 4430 HTTP/2 GET /home/GetSapData 1 503 4 AppOffline
PublishCode
2023-03-10 02:43:34 ::1%0 53064 ::1%0 4430 - - - - - - Timer_ConnectionIdle -
我在IIS中检查了很多东西,但都不起作用:
1.我尝试在应用程序池中将Enable 32-Bit Applications
更改为true。
1.我尝试在应用程序池的回收部分增加回收私有内存限制
1.我尝试增加缓存输出大小
我一直在努力为过去1周,使其在IIS工作,而在Kestrel服务器相同的位置代码,它是完美的工作。
如有任何帮助,我们将不胜感激。
1条答案
按热度按时间eqfvzcg81#
我们遇到了类似的问题,来自.NET Core的SAP RFC通信在IIS之外工作正常,但在内部却不行。经过多次实验,它似乎解决了在进程外运行我们的Web API项目的问题。在这种模式下,IIS作为kestrel的反向代理工作,您已经使用了kestrel。具体来说,您可以通过设置在项目文件中启用此功能:
<AspNetCoreHostingModel>OutOfProcess</AspNetCoreHostingModel>