@@ -170,7 +170,6 @@ private void CreateHttpClient(DelegatingHandler[] handlers, KubernetesClientConf
170
170
{
171
171
FirstMessageHandler = HttpClientHandler = CreateRootHandler ( ) ;
172
172
173
-
174
173
#if NET5_0
175
174
// https://github.com/kubernetes-client/csharp/issues/587
176
175
// let user control if tcp keep alive until better fix
@@ -187,7 +186,12 @@ private void CreateHttpClient(DelegatingHandler[] handlers, KubernetesClientConf
187
186
//
188
187
// Should remove after better solution
189
188
190
- var sh = new SocketsHttpHandler ( ) ;
189
+ var sh = new SocketsHttpHandler
190
+ {
191
+ KeepAlivePingPolicy = HttpKeepAlivePingPolicy . WithActiveRequests ,
192
+ KeepAlivePingDelay = new TimeSpan ( 0 , 3 , 0 ) , // Send pings every three minutes
193
+ KeepAlivePingTimeout = new TimeSpan ( 0 , 0 , 30 ) , // Timeout pings after 30s of no response
194
+ } ;
191
195
sh . ConnectCallback = async ( context , token ) =>
192
196
{
193
197
var socket = new Socket ( SocketType . Stream , ProtocolType . Tcp )
@@ -243,6 +247,10 @@ private void CreateHttpClient(DelegatingHandler[] handlers, KubernetesClientConf
243
247
244
248
AppendDelegatingHandler < WatcherDelegatingHandler > ( ) ;
245
249
HttpClient = new HttpClient ( FirstMessageHandler , false ) ;
250
+
251
+ #if NET5_0
252
+ HttpClient . DefaultRequestVersion = HttpVersion . Version20 ;
253
+ #endif
246
254
}
247
255
248
256
/// <summary>
0 commit comments