クライアントは、最新のJedis 2.7を採用しています
1.maven依存関係:
<Dependency> groupId> Redis.Clients </groupId> <Artifactid> jedis </artifactid> <version> 2.7.3 </version> </dependency>
2。スプリング構成を追加します
<bean name = "genericobjectpoolconfig"> <プロパティ名= "maxwaitmillis" value = "-1" /> <プロパティ名= "maxtotal" value = "1000" /> <プロパティ名= "Minidle"値= "8" /> <プロパティ名= "maxidle" value = "100" /> name = "addressconfig"> <value> classpath:connect-redis.properties < /value> < /property> <property name = "addresskeyprefix" value = "dresd" /> <! - プロパティファイルのキーのプレフィックス - > <プロパティname = "タイムアウト"値= "300000" /> <プロパティ名= "" />> <propertions ref = "genericobjectpoolconfig" /> < /bean>
3. connect-redis.properties構成ファイルを追加します
6つのノードがここで構成されています
address1 =*:*address2 =*:*address3 =*:*address4 =*:*address5 =*:*address6 =*:*address6 =*:*
4. Javaクラスを追加:
java.util.hashset; Import java.util.properties; import java.util.set; Import java.util.regex.pattern; Import org.apache.commons.pool2.impl.genericobjectpoolconfig; Import org.springframework.beans.beans.fuctorywork org.springframework.beans.factory.initializingbean; Import org.springframework.core.io.resource; import redis.clients.jedis.hostandport; import redis.clients.jedis.jediscluster; jediscluster; public class jedisclusterfactory emprames factorybean addresskeyprefix; private jediscluster jediscluster; private integer Timeout; private integer maxredirections; private genericobjectpoolconfig genericobjectpoolconfig; private pattern p = pattern.compile( "^。+[:] // d {1,5} // s*$" jediscluster;}@overridepublic class <? Jediscluster> getObjectType(){return(this.jediscluster!= null?this.jediscluster.getClass():jediscluster.class():jediscluster.class);}@overridepublic boolean issingleton(){return true;} private set <hosthostandport = propicies {) properties(); prop.load(this.addressconfig.getInputStream()); set <hostandport> hasps = new Hashset <HostandPort>(); for(object key:prop.keyset()){if((string)key).startswith(addresskeyprefix)){continoing = string val =(string); p.Matcher(val).Matches(); if(!isipport){新しいIllegalargumentException( "IPまたはポートは違法");} string [] ipandport = val.split( ":"); hostandport hap = new hostandport(ipandport [0]、integer.port(ipandport [1]); haps.dd(haps.); haps;} catch(IllegalargumentException ex){Ex;} catch(Exception ex){throw new Exception( "parse jedis configuration file failed"、ex);}}@overridepublic void afterpropertiesset()throws {)throws {set <Hostandport> hasps = thishostandport(); maxredirections、genericobjectpoolconfig);} public void setaddressconfig(resource dressconfig){this.addressconfig = addressconfig;} public void setimeout(int timeout){this.timeout;} public void setMaxrections = maxRections) void setAddressKeyprefix(String AddressKeyprefix){this.addressKeyprefix = addressKeyprefix;} public void setGenericObjectPoolconfig(genericObjectpoolconfig(genericobpoolconfig){this.genericobjectpoolconfig = genericobjectpoolconfig;} 5.構成はこの時点で完了します
使用中は、以下に示すように、直接注入するだけです。
@autowiredjediscluster jediscluster;
要約します
上記はすべて、Spring Integration Redisクラスターの詳細な説明です。誰にとっても役立つことを願っています。欠点がある場合は、それを指摘するためにメッセージを残してください。このサイトへのご支援をありがとうございました!