|
|
@ -17,9 +17,12 @@ import ( |
|
|
|
) |
|
|
|
|
|
|
|
type VolumeServer struct { |
|
|
|
inFlightUploadDataSize int64 |
|
|
|
concurrentUploadLimit int64 |
|
|
|
inFlightUploadDataLimitCond *sync.Cond |
|
|
|
inFlightUploadDataSize int64 |
|
|
|
inFlightDownloadDataSize int64 |
|
|
|
concurrentUploadLimit int64 |
|
|
|
concurrentDownloadLimit int64 |
|
|
|
inFlightUploadDataLimitCond *sync.Cond |
|
|
|
inFlightDownloadDataLimitCond *sync.Cond |
|
|
|
|
|
|
|
SeedMasterNodes []string |
|
|
|
currentMaster string |
|
|
@ -54,6 +57,7 @@ func NewVolumeServer(adminMux, publicMux *http.ServeMux, ip string, |
|
|
|
compactionMBPerSecond int, |
|
|
|
fileSizeLimitMB int, |
|
|
|
concurrentUploadLimit int64, |
|
|
|
concurrentDownloadLimit int64, |
|
|
|
) *VolumeServer { |
|
|
|
|
|
|
|
v := util.GetViper() |
|
|
@ -67,19 +71,21 @@ func NewVolumeServer(adminMux, publicMux *http.ServeMux, ip string, |
|
|
|
readExpiresAfterSec := v.GetInt("jwt.signing.read.expires_after_seconds") |
|
|
|
|
|
|
|
vs := &VolumeServer{ |
|
|
|
pulseSeconds: pulseSeconds, |
|
|
|
dataCenter: dataCenter, |
|
|
|
rack: rack, |
|
|
|
needleMapKind: needleMapKind, |
|
|
|
FixJpgOrientation: fixJpgOrientation, |
|
|
|
ReadMode: readMode, |
|
|
|
grpcDialOption: security.LoadClientTLS(util.GetViper(), "grpc.volume"), |
|
|
|
compactionBytePerSecond: int64(compactionMBPerSecond) * 1024 * 1024, |
|
|
|
fileSizeLimitBytes: int64(fileSizeLimitMB) * 1024 * 1024, |
|
|
|
isHeartbeating: true, |
|
|
|
stopChan: make(chan bool), |
|
|
|
inFlightUploadDataLimitCond: sync.NewCond(new(sync.Mutex)), |
|
|
|
concurrentUploadLimit: concurrentUploadLimit, |
|
|
|
pulseSeconds: pulseSeconds, |
|
|
|
dataCenter: dataCenter, |
|
|
|
rack: rack, |
|
|
|
needleMapKind: needleMapKind, |
|
|
|
FixJpgOrientation: fixJpgOrientation, |
|
|
|
ReadMode: readMode, |
|
|
|
grpcDialOption: security.LoadClientTLS(util.GetViper(), "grpc.volume"), |
|
|
|
compactionBytePerSecond: int64(compactionMBPerSecond) * 1024 * 1024, |
|
|
|
fileSizeLimitBytes: int64(fileSizeLimitMB) * 1024 * 1024, |
|
|
|
isHeartbeating: true, |
|
|
|
stopChan: make(chan bool), |
|
|
|
inFlightUploadDataLimitCond: sync.NewCond(new(sync.Mutex)), |
|
|
|
inFlightDownloadDataLimitCond: sync.NewCond(new(sync.Mutex)), |
|
|
|
concurrentUploadLimit: concurrentUploadLimit, |
|
|
|
concurrentDownloadLimit: concurrentDownloadLimit, |
|
|
|
} |
|
|
|
vs.SeedMasterNodes = masterNodes |
|
|
|
|
|
|
|