JedisSocketFactory.createSocket ត្រូវតែត្រឡប់សុខេតដែលបានភ្ជាប់ ហើយរួចរាល់ដឹកជញ្ជូនចរាចរណ៍ Redis។ នៅក្នុង Jedis 5.2.0 កម្មវិធីផ្តល់រោងចក្រនោះ និងការកំណត់ Redis client របស់វានៅទីនេះ៖

var jedis = new Jedis(socksSocketFactory, redisConfig);

socksSocketFactory អនុវត្ត redis.clients.jedis.JedisSocketFactory ហើយ redisConfig គឺជា JedisClientConfig របស់កម្មវិធី។ ត្រូវរួចរាល់ដើម្បីភ្ជាប់នៅពេល constructor ដំណើរការ៖ វាអាចធ្វើការផ្ទៀងផ្ទាត់ និងការកំណត់ Redis ផ្សេងទៀតភ្លាមៗ។

តាមដានសុខេតមួយពីការបង្កើតរហូតដល់ការប្រគល់

សម្រាប់ផ្លូវ SOCKS5 ដែលមិនមានការផ្ទៀងផ្ទាត់ រោងចក្រអាចបង្កើត java.net.Socket ជាមួយអន្តរការី Proxy.Type.SOCKS ច្បាស់លាស់ បន្ទាប់មកភ្ជាប់ទៅ host និង port របស់ Redis។ ទុកគោលដៅឱ្យមិនទាន់ដោះស្រាយ ប្រសិនបើម៉ាស៊ីនមេ SOCKS ត្រូវដោះស្រាយឈ្មោះ host។

កំណត់ការព្យាយាមភ្ជាប់ និងអនុវត្តរយៈពេលអានដែលបានកំណត់។ ប្រសិនបើការភ្ជាប់បរាជ័យ សូមបិទសុខេតនោះ ហើយរាយការណ៍ JedisConnectionException; ចំណុចប្រទាក់របស់រោងចក្រមិនប្រកាស IOException ដែលបានពិនិត្យទេ។

ប្រសិនបើ Redis ត្រូវការ TLS សូមបង្កើត និងផ្ទៀងផ្ទាត់ TLS មុនពេលប្រគល់សុខេតមកវិញ។ មិនអាចសន្មតថា flag ដាច់ដោយឡែកនឹងបំប្លែងសុខេតណាមួយដែលរោងចក្រប្រគល់មកវិញបានទេ។ សម្រាប់ pool សូមធ្វើម្តងទៀតនូវវដ្តជីវិតនេះជាមួយសុខេតថ្មីនៅរាល់ការហៅរោងចក្រ រួមទាំងការភ្ជាប់ជំនួស។

ការជ្រើស HTTP នៅក្នុង ProxySelector សកលមិនមែនជាការអនុវត្តជំនួសនៃការងារនេះទេ។ Redis ផ្ញើ RESP តាមសុខេតរបស់វា; វាមិនក្លាយជា HTTP ឬចរចា CONNECT ដោយសារតែនេះទេ។

អត្ថបទពាក់ព័ន្ធ