ลูกค้าใช้เจไดล่าสุด 2.7
1. การพึ่งพา Maven:
<Ederency> <roupId> redis.Clients </groupId> <ratifactid> Jedis </artifactId> <version> 2.7.3 </เวอร์ชัน> </perentency>
2. เพิ่มการกำหนดค่าสปริง
<bean name = "genericobjectPoolConfig"> <property name = "maxwaitmillis" value = "-1" /> <name property = "maxtotal" value = "1000" /> <property name = "minidle" value = "8" /> name = "addressConfig"> <value> classpath: Connect-redis.properties < /value> < /คุณสมบัติ> <property name = "addresskefix" value = "address" /> <!-คำนำหน้าของคีย์ในไฟล์คุณสมบัติ-> <property name = "timeout" value = "300000" ref = "genericobjectpoolconfig" /> </ebean>
3. เพิ่มไฟล์การกำหนดค่า connect-redis.properties
มีการกำหนดค่า 6 โหนดที่นี่
address1 =*:*address2 =*:*address3 =*:*address4 =*:*address5 =*:*address6 =*:*address6 =*:*
4. เพิ่มคลาส Java:
นำเข้า java.util.hashset; นำเข้า java.util.properties; นำเข้า java.util.set; นำเข้า java.util.regex.pattern; นำเข้า org.apache.commons.pool2.impl.genericobjectPoolConfig; org.springframework.beans.factory.initializingbean; นำเข้า org.springframework.core.io.resource; นำเข้า redis.clients.jedis.hostandport นำเข้า Redis.clients.jedis addresskeyprefix; Private Jediscluster Jediscluster; การหมดเวลาจำนวนเต็มส่วนตัว; จำนวนเต็มส่วนตัว maxredirections; private genericobjectpoolconfig genericobjectpoolconfig; รูปแบบส่วนตัว p = รูปแบบ compile ("^.+[:] // d {1,5} // s*$"); Jediscluster;}@class overridepublic <? ขยาย jediscluster> getObjectType () {return (this.jediscluster! = null? this.jediscluster.getClass (): jediscluster.class);}@overridepublic Boolean issingleton () {return true; คุณสมบัติ (); prop.load (this.addressconfig.getInputStream ()); set <sderstandport> hasps = new hashset <hostandport> (); สำหรับ (key object: prop.keyset ()) {if (! P.Matcher (val). -matches (); ถ้า (! isipport) {โยน unlegalargumentException ใหม่ ("IP หรือพอร์ตผิดกฎหมาย");} String [] ipandport = val.split (":"); Hostandport Hap = Hostandport (Ipandport [0] (unlueLargumentException ex) {โยน ex;} catch (Exception ex) {โยนข้อยกเว้นใหม่ ("ไฟล์การกำหนดค่า Jedis Parse Jedis ล้มเหลว", ex);}}@void overridepublic void afterpropertiesset () THROWS Maxredirections, GenericObjectPoolConfig);} โมฆะสาธารณะ setAddressConfig (ทรัพยากร addressConfig) {this.addressConfig = addressConfig;} โมฆะสาธารณะ settimeout (หมดเวลา) {this.timeout = timeout; setAddressKeyPrefix (addressKeyPrefix) {this.addressKeyPrefix = addressKeyPrefix;} โมฆะสาธารณะ setGenericObjectPoolConfig (genericObjectPoolConfig genericobjectPoolConfig) 5. การกำหนดค่าเสร็จสมบูรณ์ ณ จุดนี้
เมื่อใช้งานเพียงแค่ฉีดโดยตรงดังที่แสดงด้านล่าง:
@autowiredJediscluster Jediscluster;
สรุป
ข้างต้นเป็นคำอธิบายโดยละเอียดทั้งหมดของการรวมกลุ่มสปริงเรดดิสคลัสเตอร์ฉันหวังว่ามันจะเป็นประโยชน์กับทุกคน หากมีข้อบกพร่องใด ๆ โปรดฝากข้อความไว้เพื่อชี้ให้เห็น ขอบคุณเพื่อนที่ให้การสนับสนุนเว็บไซต์นี้!