mirror of
https://github.com/seaweedfs/seaweedfs.git
synced 2025-09-21 04:37:58 +08:00
refactoring, start to use gorilla/mux
This commit is contained in:
@@ -10,6 +10,7 @@ import (
|
|||||||
"code.google.com/p/weed-fs/go/topology"
|
"code.google.com/p/weed-fs/go/topology"
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
"errors"
|
"errors"
|
||||||
|
"github.com/gorilla/mux"
|
||||||
"net/http"
|
"net/http"
|
||||||
"os"
|
"os"
|
||||||
"path"
|
"path"
|
||||||
@@ -233,23 +234,24 @@ func runMaster(cmd *Command, args []string) bool {
|
|||||||
}
|
}
|
||||||
vg = replication.NewDefaultVolumeGrowth()
|
vg = replication.NewDefaultVolumeGrowth()
|
||||||
glog.V(0).Infoln("Volume Size Limit is", *volumeSizeLimitMB, "MB")
|
glog.V(0).Infoln("Volume Size Limit is", *volumeSizeLimitMB, "MB")
|
||||||
http.HandleFunc("/dir/assign", secure(masterWhiteList, dirAssignHandler))
|
|
||||||
http.HandleFunc("/dir/lookup", secure(masterWhiteList, dirLookupHandler))
|
|
||||||
http.HandleFunc("/dir/join", secure(masterWhiteList, dirJoinHandler))
|
|
||||||
http.HandleFunc("/dir/status", secure(masterWhiteList, dirStatusHandler))
|
|
||||||
http.HandleFunc("/vol/grow", secure(masterWhiteList, volumeGrowHandler))
|
|
||||||
http.HandleFunc("/vol/status", secure(masterWhiteList, volumeStatusHandler))
|
|
||||||
http.HandleFunc("/vol/vacuum", secure(masterWhiteList, volumeVacuumHandler))
|
|
||||||
|
|
||||||
http.HandleFunc("/submit", secure(masterWhiteList, submitFromMasterServerHandler))
|
r := mux.NewRouter()
|
||||||
http.HandleFunc("/", redirectHandler)
|
r.HandleFunc("/dir/assign", secure(masterWhiteList, dirAssignHandler))
|
||||||
|
r.HandleFunc("/dir/lookup", secure(masterWhiteList, dirLookupHandler))
|
||||||
|
r.HandleFunc("/dir/join", secure(masterWhiteList, dirJoinHandler))
|
||||||
|
r.HandleFunc("/dir/status", secure(masterWhiteList, dirStatusHandler))
|
||||||
|
r.HandleFunc("/vol/grow", secure(masterWhiteList, volumeGrowHandler))
|
||||||
|
r.HandleFunc("/vol/status", secure(masterWhiteList, volumeStatusHandler))
|
||||||
|
r.HandleFunc("/vol/vacuum", secure(masterWhiteList, volumeVacuumHandler))
|
||||||
|
r.HandleFunc("/submit", secure(masterWhiteList, submitFromMasterServerHandler))
|
||||||
|
r.HandleFunc("/", redirectHandler)
|
||||||
|
|
||||||
topo.StartRefreshWritableVolumes(*garbageThreshold)
|
topo.StartRefreshWritableVolumes(*garbageThreshold)
|
||||||
|
|
||||||
glog.V(0).Infoln("Start Weed Master", VERSION, "at port", strconv.Itoa(*mport))
|
glog.V(0).Infoln("Start Weed Master", VERSION, "at port", strconv.Itoa(*mport))
|
||||||
srv := &http.Server{
|
srv := &http.Server{
|
||||||
Addr: ":" + strconv.Itoa(*mport),
|
Addr: ":" + strconv.Itoa(*mport),
|
||||||
Handler: http.DefaultServeMux,
|
Handler: r,
|
||||||
ReadTimeout: time.Duration(*mReadTimeout) * time.Second,
|
ReadTimeout: time.Duration(*mReadTimeout) * time.Second,
|
||||||
}
|
}
|
||||||
e = srv.ListenAndServe()
|
e = srv.ListenAndServe()
|
||||||
|
@@ -5,6 +5,7 @@ import (
|
|||||||
"code.google.com/p/weed-fs/go/operation"
|
"code.google.com/p/weed-fs/go/operation"
|
||||||
"code.google.com/p/weed-fs/go/replication"
|
"code.google.com/p/weed-fs/go/replication"
|
||||||
"code.google.com/p/weed-fs/go/storage"
|
"code.google.com/p/weed-fs/go/storage"
|
||||||
|
"github.com/gorilla/mux"
|
||||||
"math/rand"
|
"math/rand"
|
||||||
"mime"
|
"mime"
|
||||||
"net/http"
|
"net/http"
|
||||||
@@ -341,14 +342,15 @@ func runVolume(cmd *Command, args []string) bool {
|
|||||||
|
|
||||||
store = storage.NewStore(*vport, *ip, *publicUrl, folders, maxCounts)
|
store = storage.NewStore(*vport, *ip, *publicUrl, folders, maxCounts)
|
||||||
defer store.Close()
|
defer store.Close()
|
||||||
http.HandleFunc("/", storeHandler)
|
r := mux.NewRouter()
|
||||||
http.HandleFunc("/submit", secure(volumeWhiteList, submitFromVolumeServerHandler))
|
r.HandleFunc("/submit", secure(volumeWhiteList, submitFromVolumeServerHandler))
|
||||||
http.HandleFunc("/status", secure(volumeWhiteList, statusHandler))
|
r.HandleFunc("/status", secure(volumeWhiteList, statusHandler))
|
||||||
http.HandleFunc("/admin/assign_volume", secure(volumeWhiteList, assignVolumeHandler))
|
r.HandleFunc("/admin/assign_volume", secure(volumeWhiteList, assignVolumeHandler))
|
||||||
http.HandleFunc("/admin/vacuum_volume_check", secure(volumeWhiteList, vacuumVolumeCheckHandler))
|
r.HandleFunc("/admin/vacuum_volume_check", secure(volumeWhiteList, vacuumVolumeCheckHandler))
|
||||||
http.HandleFunc("/admin/vacuum_volume_compact", secure(volumeWhiteList, vacuumVolumeCompactHandler))
|
r.HandleFunc("/admin/vacuum_volume_compact", secure(volumeWhiteList, vacuumVolumeCompactHandler))
|
||||||
http.HandleFunc("/admin/vacuum_volume_commit", secure(volumeWhiteList, vacuumVolumeCommitHandler))
|
r.HandleFunc("/admin/vacuum_volume_commit", secure(volumeWhiteList, vacuumVolumeCommitHandler))
|
||||||
http.HandleFunc("/admin/freeze_volume", secure(volumeWhiteList, freezeVolumeHandler))
|
r.HandleFunc("/admin/freeze_volume", secure(volumeWhiteList, freezeVolumeHandler))
|
||||||
|
r.HandleFunc("/", storeHandler)
|
||||||
|
|
||||||
go func() {
|
go func() {
|
||||||
connected := true
|
connected := true
|
||||||
@@ -375,7 +377,7 @@ func runVolume(cmd *Command, args []string) bool {
|
|||||||
glog.V(0).Infoln("Start Weed volume server", VERSION, "at http://"+*ip+":"+strconv.Itoa(*vport))
|
glog.V(0).Infoln("Start Weed volume server", VERSION, "at http://"+*ip+":"+strconv.Itoa(*vport))
|
||||||
srv := &http.Server{
|
srv := &http.Server{
|
||||||
Addr: ":" + strconv.Itoa(*vport),
|
Addr: ":" + strconv.Itoa(*vport),
|
||||||
Handler: http.DefaultServeMux,
|
Handler: r,
|
||||||
ReadTimeout: (time.Duration(*vReadTimeout) * time.Second),
|
ReadTimeout: (time.Duration(*vReadTimeout) * time.Second),
|
||||||
}
|
}
|
||||||
e := srv.ListenAndServe()
|
e := srv.ListenAndServe()
|
||||||
|
Reference in New Issue
Block a user