JedisSocketFactory.createSocket må returnere ein tilkopla socket som er klar til å bera Redis-trafikk. I Jedis 5.2.0 leverer applikasjonen den fabrikken og si Redis-klientkonfigurasjon her:

var jedis = new Jedis(socksSocketFactory, redisConfig);

socksSocketFactory implementerer redis.clients.jedis.JedisSocketFactory, og redisConfig er JedisClientConfig til applikasjonen. Ver klar til å kople til når konstruktøren køyrer: han kan gjera autentisering og andre Redis-oppsett med ein gong.

Følg éin socket frå oppretting til overlevering

For ei uautentisert SOCKS5-rute kan fabrikken lage ein java.net.Socket med ein eksplisitt Proxy.Type.SOCKS-mellommann og deretter kople til Redis-verten og -porten. Lat destinasjonen vera uløyst om SOCKS-tenaren skal slå opp vertsnamnet.

Avgrens tilkoplingsforsøket og bruk den tiltenkte lesetidsgrensa. Viss tilkoplinga mislukkast, lat att den socketen og rapporter JedisConnectionException; fabrikkgrensesnittet deklarerer ikkje kontrollert IOException.

Viss Redis krev TLS, set opp og stadfest TLS før socketen vert levert attende. Ein kan ikkje gå ut frå at eit eige flagg gjer om ein vilkårleg socket som fabrikken leverer. For ein pool, gjer denne livssyklusen om att med ein ny socket ved kvart fabrikkall, òg erstatningstilkoplingar.

Eit HTTP-val i ein global ProxySelector er ikkje ei alternativ implementering av dette arbeidet. Redis sender RESP over socketen sin; han vert ikkje dermed HTTP og forhandlar ikkje CONNECT.

Relaterte artiklar