|
|
@@ -16,6 +16,7 @@ package v3rpc
|
|
|
|
|
|
import (
|
|
|
"crypto/tls"
|
|
|
+ "math"
|
|
|
|
|
|
"github.com/coreos/etcd/etcdserver"
|
|
|
pb "github.com/coreos/etcd/etcdserver/etcdserverpb"
|
|
|
@@ -27,7 +28,10 @@ import (
|
|
|
healthpb "google.golang.org/grpc/health/grpc_health_v1"
|
|
|
)
|
|
|
|
|
|
-const grpcOverheadBytes = 512 * 1024
|
|
|
+const (
|
|
|
+ grpcOverheadBytes = 512 * 1024
|
|
|
+ maxStreams = math.MaxUint32
|
|
|
+)
|
|
|
|
|
|
func init() {
|
|
|
grpclog.SetLogger(plog)
|
|
|
@@ -42,6 +46,7 @@ func Server(s *etcdserver.EtcdServer, tls *tls.Config) *grpc.Server {
|
|
|
opts = append(opts, grpc.UnaryInterceptor(newUnaryInterceptor(s)))
|
|
|
opts = append(opts, grpc.StreamInterceptor(newStreamInterceptor(s)))
|
|
|
opts = append(opts, grpc.MaxMsgSize(int(s.Cfg.MaxRequestBytes+grpcOverheadBytes)))
|
|
|
+ opts = append(opts, grpc.MaxConcurrentStreams(maxStreams))
|
|
|
grpcServer := grpc.NewServer(opts...)
|
|
|
|
|
|
pb.RegisterKVServer(grpcServer, NewQuotaKVServer(s))
|