@@ -28,17 +28,14 @@ import (
2828 grpc_retry "github.com/grpc-ecosystem/go-grpc-middleware/retry"
2929 grpc_prometheus "github.com/grpc-ecosystem/go-grpc-prometheus"
3030 "google.golang.org/grpc"
31- "google.golang.org/grpc/balancer"
3231
3332 cdnsystemv1 "d7y.io/api/v2/pkg/apis/cdnsystem/v1"
3433 commonv1 "d7y.io/api/v2/pkg/apis/common/v1"
3534
3635 logger "d7y.io/dragonfly/v2/internal/dflog"
3736 pkgbalancer "d7y.io/dragonfly/v2/pkg/balancer"
3837 "d7y.io/dragonfly/v2/pkg/dfnet"
39- "d7y.io/dragonfly/v2/pkg/resolver"
4038 "d7y.io/dragonfly/v2/pkg/rpc"
41- "d7y.io/dragonfly/v2/scheduler/config"
4239)
4340
4441const (
@@ -89,51 +86,6 @@ func GetClientByAddr(ctx context.Context, netAddr dfnet.NetAddr, opts ...grpc.Di
8986 }, nil
9087}
9188
92- func GetClient (ctx context.Context , dynconfig config.DynconfigInterface , opts ... grpc.DialOption ) (Client , error ) {
93- // Register resolver and balancer.
94- resolver .RegisterSeedPeer (dynconfig )
95- builder , pickerBuilder := pkgbalancer .NewConsistentHashingBuilder ()
96- balancer .Register (builder )
97-
98- conn , err := grpc .DialContext (
99- ctx ,
100- resolver .SeedPeerVirtualTarget ,
101- append ([]grpc.DialOption {
102- grpc .WithIdleTimeout (0 ),
103- grpc .WithDefaultCallOptions (
104- grpc .MaxCallRecvMsgSize (math .MaxInt32 ),
105- grpc .MaxCallSendMsgSize (math .MaxInt32 ),
106- ),
107- grpc .WithDefaultServiceConfig (pkgbalancer .BalancerServiceConfig ),
108- grpc .WithUnaryInterceptor (grpc_middleware .ChainUnaryClient (
109- rpc .ConvertErrorUnaryClientInterceptor ,
110- grpc_prometheus .UnaryClientInterceptor ,
111- grpc_zap .UnaryClientInterceptor (logger .GrpcLogger .Desugar ()),
112- grpc_retry .UnaryClientInterceptor (
113- grpc_retry .WithMax (maxRetries ),
114- grpc_retry .WithBackoff (grpc_retry .BackoffLinear (backoffWaitBetween )),
115- ),
116- rpc .RefresherUnaryClientInterceptor (dynconfig ),
117- )),
118- grpc .WithStreamInterceptor (grpc_middleware .ChainStreamClient (
119- rpc .ConvertErrorStreamClientInterceptor ,
120- grpc_prometheus .StreamClientInterceptor ,
121- grpc_zap .StreamClientInterceptor (logger .GrpcLogger .Desugar ()),
122- rpc .RefresherStreamClientInterceptor (dynconfig ),
123- )),
124- }, opts ... )... ,
125- )
126- if err != nil {
127- return nil , err
128- }
129-
130- return & client {
131- SeederClient : cdnsystemv1 .NewSeederClient (conn ),
132- ClientConn : conn ,
133- ConsistentHashingPickerBuilder : pickerBuilder ,
134- }, nil
135- }
136-
13789// Client is the interface for grpc client.
13890type Client interface {
13991 // ObtainSeeds triggers the seed peer to download task back-to-source..
0 commit comments