第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在 golang 中限制從服務(wù)器上傳和下載的速度?

如何在 golang 中限制從服務(wù)器上傳和下載的速度?

Go
慕桂英3389331 2021-09-09 13:49:10
如何在 golang 中限制從服務(wù)器上傳和下載的速度?我正在編寫一個 golang 服務(wù)器來允許用戶上傳和下載文件。而且文件很大,大約 1GB 字節(jié)。我想將上傳和下載速度限制為(例如)1MB/s(當(dāng)然可以配置)。下面是我的上傳代碼:func uploadFile(w http.ResponseWriter, r *http.Request) {    file, _, err := r.FormFile("file")    if err != nil {        http.Error(w, err.Error(), 500)        return    }    defer file.Close()    os.MkdirAll(`e:\test`, os.ModePerm)    out, err := os.Create(`e:\test\test.mpg`)    if err != nil {        http.Error(w, err.Error(), 500)        return    }    defer out.Close()    _, err = io.Copy(out, file)    if err != nil {        http.Error(w, err.Error(), 500)    }}
查看完整描述

2 回答

?
SMILET

TA貢獻(xiàn)1796條經(jīng)驗 獲得超4個贊

您可以查看本文中PuerkitoBio/throttled介紹的的實現(xiàn):

throttled,一個 Go 包,它實現(xiàn)了各種策略來控制對 HTTP 處理程序的訪問。
開箱即用,它支持請求的速率限制、請求的恒定間隔流和內(nèi)存使用閾值以授予或拒絕訪問,但它還提供擴(kuò)展其功能的機(jī)制。

速率限制并不是您所需要的,但可以為實現(xiàn)類似功能提供一個好主意。


查看完整回答
反對 回復(fù) 2021-09-09
  • 2 回答
  • 0 關(guān)注
  • 224 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號