Mat*_*iee 18 c# trafficshaping bandwidth webrequest low-bandwidth
我有一个C#应用程序,它使用本地库,使用UDP通过Internet将视频发送到其他IP.我对该库没有流量控制.
我的应用程序还调用另一台服务器的Web服务,使用WebRequest我可以控制它们.
问题是:
当我的互联网带宽较低时,视频流会占用我所有的带宽.因此,在此期间我无法获得我的Web服务方法的响应.
有没有办法优先考虑WebRequest或为他们节省一些带宽,以便我可以安全地获得响应?
我不知道C#中的任何方法都可以通过这种方式确定流量的优先级.
我知道这不是一个堆栈溢出的答案,但这就是我处理流媒体服务的方式,当你没有适当的网络基础设施访问权限时,我不会在我的环境中消耗带宽,这是"正确"的方式.
当您总结一下您将要使用的方法时,我建议您查看https://superuser.com ,它应该能够回答您在实施解决方案时遇到的任何障碍.
解决方案一.
分成2个服务,并通过REST API在每个服务或数据库轮询中进行通信.然后使用网络限制程序来确定其中一个服务的流量的优先级. https://www.netlimiter.com/和https://netbalancer.com/是可以执行此操作的软件示例,但还有更多.
优势:您将对流媒体服务进行动态限制.
缺点:你必须在服务器上运行另一个程序,它绝对不是免费的.
解决方案二.
使用IIS,在IIS https://www.iis.net/configreference/system.applicationhost/weblimits中有一个内置限制, 并查看maxGlobalBandWidth.然后,您有2个通过REST或数据库轮询进行通信的网站.优点:简单的开箱即用解决方案.
缺点:您的限制不是动态的,并且在您的配置文件中.
请注意,如果您的互联网网络速度变化很大,则不应使用此方法.
| 归档时间: |
|
| 查看次数: |
650 次 |
| 最近记录: |