IIS 发布dotnet core项目包含signalr,仅开启10个连接的解决方案

背景:

最近在做一个Web项目,由于需要实现客户端和服务器的双向通信。比较方便的做法:把.Net Core项目发布部署在IIS。但是出现一个问题:WebSocket长连接数量超过10个,IIS就罢工了,不接受任何请求,导致页面卡死,一断开websocket连接,页面就恢复正常了

深入了解:

经查阅相关资料后发现普遍都会存在这个问题,可以看出确实是有这个限制。

解决方案:

按照提示我们打算使用kestrel作为部署方案,然后通过windows服务的托管项目的形式进行发布。

代码和实现:

1,在项目中引用图片中的nuget包

2,按照图片中的代码在Program.cs进行编写

3,重新生成和发布代码;

4,新增windows服务,打开cmd命令行

sc create 服务名称 binPath= 路径/程序.exe

5,查看服务和启动

结语:

当然,如果不需要windows服务的话,只需要吧.netcore发布后,点击exe启动即可(注意上文中的ip监听。默认Kestrel web服务器监听的是localhost:5000)。

最后,欢迎在评论区沟通。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

从前是晴天

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值