Skip to content

Commit

Permalink
add redis cluster test
Browse files Browse the repository at this point in the history
  • Loading branch information
黄志磊 committed Jan 5, 2016
1 parent c9a6f95 commit f9a9597
Show file tree
Hide file tree
Showing 5 changed files with 67 additions and 10 deletions.
Expand Up @@ -4,8 +4,6 @@
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Set; import java.util.Set;
import java.util.concurrent.Executor;
import java.util.concurrent.Executors;


import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
Expand Down
@@ -1,12 +1,11 @@
package com.shinemo.mpush.tools.redis.listener; package com.shinemo.mpush.tools.redis.listener;


import java.util.ArrayList;
import java.util.Iterator;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.concurrent.Executor; import java.util.concurrent.Executor;
import java.util.concurrent.Executors; import java.util.concurrent.Executors;


import com.google.common.collect.Lists;
import com.google.common.collect.Maps; import com.google.common.collect.Maps;


public class ListenerDispatcher implements MessageListener { public class ListenerDispatcher implements MessageListener {
Expand All @@ -23,22 +22,22 @@ public void onMessage(final String channel, final String message) {
if (listeners == null) { if (listeners == null) {
return; return;
} }
for (final MessageListener l : listeners) { for (final MessageListener listener : listeners) {
executor.execute(new Runnable() { executor.execute(new Runnable() {
@Override @Override
public void run() { public void run() {
l.onMessage(channel, message); listener.onMessage(channel, message);
} }
}); });
} }
} }


public void subscribe(String channel, MessageListener l) { public void subscribe(String channel, MessageListener listener) {
List<MessageListener> listeners = subscribes.get(channel); List<MessageListener> listeners = subscribes.get(channel);
if (listeners == null) { if (listeners == null) {
listeners = new ArrayList<>(); listeners = Lists.newArrayList();
subscribes.put(channel, listeners); subscribes.put(channel, listeners);
} }
listeners.add(l); listeners.add(listener);
} }
} }
Expand Up @@ -13,7 +13,10 @@
import com.shinemo.mpush.tools.redis.RedisUtil; import com.shinemo.mpush.tools.redis.RedisUtil;
import com.shinemo.mpush.tools.redis.pubsub.Subscriber; import com.shinemo.mpush.tools.redis.pubsub.Subscriber;



/**
* redis 对外封装接口
*
*/
public class RedisManage { public class RedisManage {


/********************* /*********************
Expand Down
@@ -0,0 +1,45 @@
package com.shinemo.mpush.tools.redis;

import java.util.Date;
import java.util.HashSet;
import java.util.Set;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import org.junit.Before;
import org.junit.Test;

import com.shinemo.mpush.tools.Jsons;

import redis.clients.jedis.HostAndPort;
import redis.clients.jedis.JedisCluster;

public class RedisClusterTest {

Set<HostAndPort> jedisClusterNodes = new HashSet<HostAndPort>();

JedisCluster cluster = null;

@Before
public void init() {
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));
jedisClusterNodes.add(new HostAndPort("127.0.0.1", 7003));
jedisClusterNodes.add(new HostAndPort("127.0.0.1", 7004));
jedisClusterNodes.add(new HostAndPort("127.0.0.1", 7005));
cluster = new JedisCluster(jedisClusterNodes,RedisPoolConfig.config);
}

@Test
public void test() {

User user = new User("huang", 18, new Date());
cluster.set("huang", Jsons.toJson(user));
String ret = cluster.get("huang");
User newUser = Jsons.fromJson(ret, User.class);
System.out.println(ToStringBuilder.reflectionToString(newUser, ToStringStyle.JSON_STYLE));

}

}
Expand Up @@ -4,6 +4,7 @@
import java.util.List; import java.util.List;


import com.shinemo.mpush.tools.redis.listener.MessageListener; import com.shinemo.mpush.tools.redis.listener.MessageListener;

import org.apache.commons.lang3.builder.ToStringBuilder; import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle; import org.apache.commons.lang3.builder.ToStringStyle;
import org.junit.Before; import org.junit.Before;
Expand All @@ -12,6 +13,7 @@
import com.shinemo.mpush.tools.InetAddressUtil; import com.shinemo.mpush.tools.InetAddressUtil;
import com.shinemo.mpush.tools.redis.manage.RedisGroupManage; import com.shinemo.mpush.tools.redis.manage.RedisGroupManage;
import com.shinemo.mpush.tools.redis.manage.RedisManage; import com.shinemo.mpush.tools.redis.manage.RedisManage;
import com.shinemo.mpush.tools.redis.pubsub.Subscriber;
import com.shinemo.mpush.tools.zk.ServerApp; import com.shinemo.mpush.tools.zk.ServerApp;
import com.shinemo.mpush.tools.zk.manage.ServerManage; import com.shinemo.mpush.tools.zk.manage.ServerManage;


Expand Down Expand Up @@ -93,6 +95,16 @@ public void onMessage(String channel, String message) {
e.printStackTrace(); e.printStackTrace();
} }
} }

@Test
public void testSub2(){
RedisManage.subscribe(new Subscriber(), "channel1", "channel2");
try {
Thread.sleep(Integer.MAX_VALUE);
} catch (InterruptedException e) {
e.printStackTrace();
}
}




} }

0 comments on commit f9a9597

Please sign in to comment.