1.使用客户端的分配分片(可以自定义配置,缺点:节点增加,服务就要改代码,不灵活) JedisPoolConfig poolConfig=new JedisPoolConfig(); JedisShardInfo jedisShardInfo1=new JedisShardInfo("127.0.0.1",6379); jedisShardInfo1.setPassword("123456"); JedisShardInfo jedisShardInfo2=new JedisShardInfo("115.29.140.141",6800); jedisShardInfo2.setPassword("Wang_Biao-22@1317"); List<JedisShardInfo> infos=Arrays.asList(jedisShardInfo1,jedisShardInfo2); ShardedJedisPool shardedJedisPool=new ShardedJedisPool(poolConfig,infos); ShardedJedis jedis=null; try { jedis=shardedJedisPool.getResource(); for (int i = 1; i <=100 ; i++) { jedis.set("K"+i,""+i); jedis.expire("K"+i,300); } for (int i = 0; i <100 ; i++) { Client client=jedis.getShard("K"+i).getClient(); System.out.println("取到的值:"+jedis.get("K"+i)+","+"当前key位于:"+client.getHost()+":"+client.getPort()); } } catch (Exception e) { e.printStackTrace(); }finally { if(jedis!=null){ jedis.close(); } } 2.Twemproxy 3.Codis