gpt4 book ai didi

c# - 我的 C# 应用程序中的带宽整形

转载 作者:IT王子 更新时间:2023-10-29 04:50:15 26 4
gpt4 key购买 nike

我有一个 C# 应用程序,它使用 native 库,使用 UDP 通过 Internet 将视频发送到其他 IP。我对那个图书馆没有交通管制。

我的应用程序还使用我可以控制的 WebRequest 调用另一台服务器的 Web 服务。

问题是:

当我的互联网带宽较低时,视频流会占用我的所有带宽。因此,在那段时间我无法从我的 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 或数据库轮询进行通信。优点:开箱即用的简单解决方案。

缺点:您的限制不是动态的并且在您的配置文件中。

请注意,如果您的 Internet 网络速度变化很大,则不应使用此方法。

关于c# - 我的 C# 应用程序中的带宽整形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43619329/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com