我是golang的初学者。
有什么方法可以限制golang的http.Get()带宽使用率?我发现了这一点:http
:
//godoc.org/code.google.com/p/mxk/go1/flowcontrol,但是我不确定如何将两者组合在一起。我将如何访问http
Reader?
github上有软件包的更新版本
您可以通过包装 io.Reader
这是一个完整的示例,它将完整地显示Google veeeery的主页。
这种包装接口以实现新功能非常好的Go风格,您在进入Go的过程中会看到很多。
package main
import (
"io"
"log"
"net/http"
"os"
"github.com/mxk/go-flowrate/flowrate"
)
func main() {
resp, err := http.Get("http://google.com")
if err != nil {
log.Fatalf("Get failed: %v", err)
}
defer resp.Body.Close()
// Limit to 10 bytes per second
wrappedIn := flowrate.NewReader(resp.Body, 10)
// Copy to stdout
_, err = io.Copy(os.Stdout, wrappedIn)
if err != nil {
log.Fatalf("Copy failed: %v", err)
}
}
在我们的开发环境(Azure)中,我们遇到了一个问题,我们确信这可能是由于底层VM的带宽限制造成的。通过将我们的应用程序服务升级到定价级别(从基本到标准),问题就不会发生了。CPU、内存、连接和线程的利用率都很低。 不同Azure应用服务层的实际网络/带宽限制是什么? 这些页面未提供任何相关内容: Azure Web App沙盒 Azure订阅和服务限制、配额和约束
问题内容: 我正在使用以下代码从Web服务器请求xml: 当我调用httpclient.execute(httpget,responseHandler)时,我得到一个clientProtocolException。该URL在Web浏览器中工作正常,它返回xml,然后浏览器显示它。 有什么想法为什么我会得到一个clientProtocolException而浏览器却能很好地处理它? 编辑1: 查看协
向传递的 URL 发出一个 GET 请求。 使用 XMLHttpRequest web API 向给定的 url 发出 get 请求。 通过调用给定的 callback 和 responseText 来处理 onload 事件。 通过运行提供的 err 函数,处理onerror事件。 省略第四个参数 err ,默认将错误记录到控制台的 error 流。 const httpGet = (url,
问题内容: 是否可以限制使用Hibernate / HQL更新的行数?例如: 我一直在使用Google搜索,以便尝试在内存数据库中使用HSQL DB以及在部署中使用MySql进行一些单元测试。MySql在Update语句上支持Limit子句,但HSQL不支持,在HSQL中使用内部选择进行UPDATE需要按顺序排序,这似乎是个坏主意。有没有办法限制更新中的行数? 谢谢。 问题答案: 在Hiberna
问题内容: 我们得到了在集群模式下工作的高负载Java应用程序。 我需要增加为客户下载和上传文件的功能。对于存储文件,我不确定要去到用户gridFs,这是最好的选择,但是mongo可以集群,并且mongo可以在diff节点之间复制数据。那正是我所需要的。 应限制不同的用户组使用不同的带宽。根据一些业务规则,我应该限制某些用户的下载速度。我看到一些解决方案,此 它们大多数以相同的方式工作。 读取一堆
本文向大家介绍如何在Linux上限制网络带宽,包括了如何在Linux上限制网络带宽的使用技巧和注意事项,需要的朋友参考一下 您是否曾经与多个设备共享网络带宽?如果您曾经处于一个应用程序占用了所有流量的位置,那么您是系统管理员还是Linux用户,您将需要发现如何控制应用程序的上载和下载速度,以确保您的带宽并不完全被单个应用程序占用。本文给出了有关如何在Linux上限制网络带宽的想法。 限制网络带宽