2017年7月13日 星期四

Golang: 快速建立 FileServer

用原生 http 用法,快速建立一個 FileServer。

下面有多台電腦同時下載使用經驗比較。

Fils Server 程式碼如下:

package main

import (
    "net/http"
)

func main(){
    http.Handle("/", http.FileServer(http.Dir("./src")))
    http.ListenAndServe(":8080", nil)
}

請務必在有 ./src 的目錄執行 go run。

使用 Golang 搭建的 file server 經過實際測試,可以負載同時於 30 人電腦同時下載 450MB 以上檔案,沒發生任何錯誤。

但之前使用 node 的 http-server 來跑檔案,就很容易卡線, 4 個人同時下載就會導致程式爆掉,或許 http-server 要改用串流來跑,而不是用 readFile 來讀檔案。

沒有留言:

張貼留言

© Mac Taylor, 歡迎自由轉貼。
Background Email Pattern by Toby Elliott
Since 2014