我们得到了在集群模式下工作的高负载Java应用程序。
我需要增加为客户下载和上传文件的功能。对于存储文件,我不确定要去到用户gridFs,这是最好的选择,但是mongo可以集群,并且mongo可以在diff节点之间复制数据。那正是我所需要的。
应限制不同的用户组使用不同的带宽。根据一些业务规则,我应该限制某些用户的下载速度。我看到一些解决方案,此
它们大多数以相同的方式工作。
Mongo只是向我提供InputStrem,我可以从该流中读取并写入servlet输出流。我不确定这是否有效。同样,我担心用户在下载过程中会创建很多并发线程,这会损害性能。
servlet容器是否可能有问题?
如果这可能是一个问题,如何避免呢?可能使用nio吗?
我更喜欢使用纯Java解决方案。
任何帮助将不胜感激。
泄漏存储桶或令牌存储桶算法可用于控制网络带宽。
编辑:我做了一些快速原型制作,并利用Servlet
3.0异步处理实现了算法。结果还不错。完整的源代码可以在GitHub上找到。玩得开心!
本文向大家介绍php限制文件下载速度的代码,包括了php限制文件下载速度的代码的使用技巧和注意事项,需要的朋友参考一下 有时候你会出于某种目的而要求把下载文件的速度放慢一些,例如你想实现文件下载进度条功能。限制下载速度最大的好处是节省带宽,避免瞬时流量过大而造成网络堵塞。本文将和你分享如何通过php代码来实现限制文件的下载速度。 首先来看看利用php限制文件下载速度的代码: 下面对以上代码做一些分
本文向大家介绍PHP下载大文件失败并限制下载速度的实例代码,包括了PHP下载大文件失败并限制下载速度的实例代码的使用技巧和注意事项,需要的朋友参考一下 1.问题: PHP在使用readfile函数定义下载文件时候,文件不可以过大,否则会下载失败,文件损坏且不报错; 2.原因: 这个是因为readfile读取文件的时候会把文件放入缓存,导致内存溢出; 3.解决:分段下载,并限制下载速度; 总结 以上
问题内容: 我是golang的初学者。 有什么方法可以限制golang的http.Get()带宽使用率?我发现了这一点:http : //godoc.org/code.google.com/p/mxk/go1/flowcontrol,但是我不确定如何将两者组合在一起。我将如何访问http Reader? 问题答案: github上有软件包的更新版本 您可以通过包装 这是一个完整的示例,它将完整地显
本文向大家介绍php控制文件下载速度的方法,包括了php控制文件下载速度的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了php控制文件下载速度的方法。分享给大家供大家参考。具体实现方法如下: 希望本文所述对大家的php程序设计有所帮助。
本文向大家介绍C#限速下载网络文件的方法实例,包括了C#限速下载网络文件的方法实例的使用技巧和注意事项,需要的朋友参考一下 C#限速下载网络文件的方法,具体如下: 测试截图: 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。
问题内容: 我想以编程方式限制Java中的上传或下载操作。我假设我需要做的就是检查上传进行的速度并按以下方式进行相应插入: 上面的代码能用吗?如果没有,还有更好的方法吗?是否有描述理论的教程? 问题答案: 令牌桶算法是一种限制上传或下载带宽的方法。您应该阅读本文:它解释了此算法的用法。 使用番石榴RateLimiter: 如Guava文档中所述: 重要的是要注意,所请求的许可数量永远不会影响请求本