JedisSocketFactory.createSocket moet ’n gekoppelde sok terugstuur wat gereed is om Redis-verkeer te dra. In Jedis 5.2.0 verskaf die toepassing daardie fabriek en sy Redis-kliëntkonfigurasie hier:

var jedis = new Jedis(socksSocketFactory, redisConfig);

socksSocketFactory implementeer redis.clients.jedis.JedisSocketFactory, en redisConfig is die toepassing se JedisClientConfig. Wees gereed om te koppel wanneer die konstruktor loop: dit kan dadelik verifikasie en ander Redis-opstelling uitvoer.

Volg een sok van skepping tot oorhandiging

Vir ’n ongeverifieerde SOCKS5-roete kan die fabriek ’n java.net.Socket met ’n eksplisiete Proxy.Type.SOCKS-tussenganger skep en dan aan die Redis-gasheer en -poort koppel. Hou die bestemming onopgelos as die SOCKS-bediener die gasheernaam moet oplos.

Beperk die koppelpoging en pas die beoogde leestydperk toe. As die verbinding misluk, sluit daardie sok en rapporteer JedisConnectionException; die fabriekskoppelvlak verklaar nie IOException as gekontroleerd nie.

As Redis TLS vereis, vestig en verifieer TLS voordat die sok teruggegee word. ’n Aparte vlag kan nie aanvaar word om ’n willekeurige sok wat deur die fabriek teruggegee is, te transformeer nie. Vir ’n poel herhaal hierdie lewensiklus met ’n nuwe sok by elke fabrieksoproep, insluitend vervangingsverbindings.

’n HTTP-keuse in ’n globale ProxySelector is nie ’n alternatiewe implementering van hierdie werk nie. Redis stuur RESP oor sy sok; dit word daardeur nie HTTP nie en onderhandel nie CONNECT nie.

Verwante artikels