Redis集群分布(Windows版)

本文介绍如何在Windows环境下搭建Redis集群,并提供使用Java进行非集群和集群环境下的Redis调用示例。

Redis系列

作者Mr.Chen,转载请注明博客出处:http://www.cnblogs.com/cjh-notes/

第一步:下载安装redis

windows版的下载地址:https://github.com/MSOpenTech/redis/releases

文件目录介绍:

服务端:redis-server.exe

客户端:redis-cli.exe

配置文件:redis.windows.conf

集群工具:redis-trib.rb(windows的安装文件是没有这个的,需要从linux的版本拷贝过来)

第二步:安装ruby

下载安装railsinstaller,这是一个打包好的一站式安装包,里面包含了Ruby、Ralis等组件

官方地址:http://railsinstaller.org/en

百度网盘:https://pan.baidu.com/s/1eUje2L8

安装完成后在cmd窗口中执行命令gem install redis

第三步:配置Redis节点

配置集群节点的方法跟上一节linux环境中的操作是基本一样的,这里就不在赘述。

第四步:创建集群

进入redis-trib.rb文件所在目录并执行以下命令,这里示例是3主0从:

ruby redis-trib.rb create 127.0.0.1:7000 127.0.0.1:7001 127.0.0.1:7002

最后一步:在java中调用redis

注:在非集群和集群环境中调用的方式有所不同,非集群中使用是Jedis对象,而集群中使用的是JedisCluster对象。

附上代码:

package com.cjh;

import com.sun.org.apache.regexp.internal.RE;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import redis.clients.jedis.HostAndPort;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisCluster;

import java.util.HashMap;
import java.util.HashSet;
import java.util.Set;

/**
 * Created by 20628_000 on 2018/1/24.
 */
public class RedisTest {

    public static void main(String arges[]) {
        new RedisTest().init();
    }

    private static final Logger logger = LogManager.getLogger(RedisTest.class);

    private static JedisCluster jc = null;

    public void init() {
        //连接本地的 Redis 服务
       /*jedis = new Jedis("127.0.0.1",7002);
        System.out.println("连接成功");
        System.out.println("服务正在运行: "+jedis.ping());*/


        Set<HostAndPort> jedisClusterNodes = new HashSet<HostAndPort>();
//Jedis Cluster will attempt to discover cluster nodes automatically
        jedisClusterNodes.add(new HostAndPort("127.0.0.1", 7000));
        jedisClusterNodes.add(new HostAndPort("127.0.0.1", 7001));
        jedisClusterNodes.add(new HostAndPort("127.0.0.1", 7002));
        jc = new JedisCluster(jedisClusterNodes);
        test();
    }

    public void test() {
        HashMap map = new HashMap();
        map.put("name", "cjh");
        map.put("age", "25");
        map.put("sex", "male");
        jc.hmset("myInfo", map);
        logger.info(jc.hget("myInfo", "age"));
    }

}

运行程序,查看打印信息:

2018-02-19 17:13:42 INFO com.cjh.RedisTest – 25

测试通过~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

广州程序佬

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值